ユーザーは、2つのモデル(データベーステーブル)(ユーザーとリクエスト)の情報を含むフォームを送信します。また、データは、UserIDによって結合されて一緒にリストされる必要があります。つまり、すべてのユーザーまたは特定のユーザーによって作成されたすべての要求を一覧表示する必要があります。したがって、両方のテーブルからデータを出力する必要もあります。ASP.NET MVC - 2つのモデルを同時に表示するためのViewModel
私の解決策は、これらのモデルの両方を含むUserRequestsというViewModelを作成することでしたが、私は実装に固執しています。
public class UserRequestModel {
public User User1 { get; set; }
public Request Request1 { get; set; }
を要約すると、コントローラのインデックス()関数が何をするか、すべてのユーザーによるリクエストのクエリを取得し、両方のテーブルからすべてのフィールドをリストである:それは次のようになりますかどうかはわかりません(参加)。ですから、どういうわけか、そのクエリからのデータをViewModelに取り込んで出力する必要があり、そうするためにViewModelを設定する方法がわかりません。どんな洞察にも感謝します。ありがとう!
あなただけの2つのテーブルを結合するためにLINQを使用して、何かのようにように、あなたのターゲットビューモデルにレコードを投影することができ
はい、これは良い解決策です...あなたはそれがそうではないと思いますか? – Milney
これは知っておきたいことです。私の質問は、ViewModelにそのクエリデータをどのように出力するのですか? –
これは、データアクセスがどのように行われるかによってまったく異なります... ORMを使用していますか?エンティティフレームワーク? Linq? Dapper?プレーンSqlCommands?一度あなたは、例を得るかもしれないことを決めたが、データベースからデータを取得する方法はあまりにも広すぎる答えがここに....私のASP MVCデータベースを試して、チュートリアルまたは2つを読む... – Milney