1

ASP.NET MVC 4 を使用して新しいプロジェクトを開始したばかりですが、質問があります。

1 つのビューで複数のモデル (または ViewModel-s) を使用するにはどうすればよいですか? 私はインターネットで検索されており、標準的な解決策は「2つ以上のプロパティを持つ複雑なビューモデルを作成する」です。

public class ComplexViewModel   
{
    public LoginModel LoginModel { get; set; }
    public CartModel CartModel { get; set; }
}

ただし、たとえば、各ページには、LoginModel と別のモデル (ページによって異なります) の少なくとも2 つのモデルがあります。では、各 ViewModel で LoginModel を定義する必要がありますか?

PS: ASP.NET MVC 4、Entity Framework 5 を使用しています。

4

1 に答える 1

5

BaseViewModel を作成して LoginModel プロパティを定義し、BaseViewModel からすべてのビュー モデルを継承できるため、作成するすべてのビュー モデルで LoginModel を定義する必要はありません。

public class BaseViewModel
{
    public LoginModel LoginModel { get; set; }
}

public class ComplexViewModel : BaseViewModel
{
    public CartModel CartModel { get; set; }
}
于 2013-06-26T05:59:34.823 に答える