我找不到任何关于在ASP.NET MVC 2 ViewModel方法中使用多个表单的文档。
即。在内置应用程序中,当您选择New MVC2 Web应用程序时,注册页面使用ViewPage,其继承如下:
Inherits="System.Web.Mvc.ViewPage<rs30UserWeb.Models.RegisterModel>"
我想在具有多个表单的页面上使用该方法,但RegisterModel仅支持一个表单。
答案 0 :(得分:5)
方法是使用复合视图模型:
namespace MyApp.Models
{
public class MyCompositePageModel
{
public RegisterModel registerModel;
public LoginModel loginModel;
}
}
当你这样做时,继承它的视图:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<rs30UserWeb.Models.RegisterModel>" %>
然后参考页面中的各个模型:
<%= Html.TextBoxFor(m => m.loginModel.Email) %>
<%= Html.ValidationMessageFor(m => m.loginModel.Email) %>
希望别人觉得这很有用。