为嵌套的视图模型赋值
Assign value to nested viewmodel
我对 MVC 有点陌生,在将 value/data 分配给嵌套视图模型时遇到一些困难。当我 运行 应用程序时,嵌套视图不显示任何内容,但是当我调试控制器时,设置了值。
嵌套视图模型是否必须在主视图模型的构造函数中实例化?如何?
我确实让它可以使用模型而不是 og viewmodels,但我需要添加一些验证。
示例:
public class MainViewModel
{
public NestedViewModel NestedViewModel { get; set; }
}
public class NestedViewModel
{
public string Name {get; set;}
}
在控制器中:
public ActionResult Main()
{
var mvm = new MainViewModel();
mvm.NestedViewModel = new NestedViewModel();
mvm.NestedViewModel.Name = data.Name.ToString();
return View(mvm);
}
并且在视图中:
@model WEB.Models.MainViewModel
@{Html.RenderPartial("_NestedView", Model.NestedViewModel);}
和嵌套视图:
@model WEB.Models.MainViewModel
@Html.TextBoxFor(model => model.NestedViewModel.Name)
文本框没有任何内容,而控制器有。
@model WEB.Models.MainViewModel
@Html.TextBoxFor(model => model.NestedViewModel.Name)
//should be
@model WEB.Models.NestedViewModel
@Html.TextBoxFor(model => model.Name)
我对 MVC 有点陌生,在将 value/data 分配给嵌套视图模型时遇到一些困难。当我 运行 应用程序时,嵌套视图不显示任何内容,但是当我调试控制器时,设置了值。 嵌套视图模型是否必须在主视图模型的构造函数中实例化?如何?
我确实让它可以使用模型而不是 og viewmodels,但我需要添加一些验证。
示例:
public class MainViewModel
{
public NestedViewModel NestedViewModel { get; set; }
}
public class NestedViewModel
{
public string Name {get; set;}
}
在控制器中:
public ActionResult Main()
{
var mvm = new MainViewModel();
mvm.NestedViewModel = new NestedViewModel();
mvm.NestedViewModel.Name = data.Name.ToString();
return View(mvm);
}
并且在视图中:
@model WEB.Models.MainViewModel
@{Html.RenderPartial("_NestedView", Model.NestedViewModel);}
和嵌套视图:
@model WEB.Models.MainViewModel
@Html.TextBoxFor(model => model.NestedViewModel.Name)
文本框没有任何内容,而控制器有。
@model WEB.Models.MainViewModel
@Html.TextBoxFor(model => model.NestedViewModel.Name)
//should be
@model WEB.Models.NestedViewModel
@Html.TextBoxFor(model => model.Name)