如何重用我声明的模型类型?在视图的顶部有声明
@model mySpace.viewModels.viewModel
我想要做的是稍后在页面中执行类似
的操作@for( viewModel vM in ViewBag.viewModels )
{
//some foo bar
}
答案 0 :(得分:3)
如果您已经有一个强类型视图,那么您甚至不应该考虑ViewBag / ViewData。一旦您对视图模型强烈键入视图,您在此视图中所要做的就是使用此视图模型的属性,如下所示:
@foreach (viewModel vm in Model.SomeSubModels)
{
//some foo bar
}
甚至更好,为了避免视图中出现可怕的foreach
循环,您可以使用编辑器模板(如果您需要编辑某些属性):
@Html.EditorFor(x => x.SomeSubModels)
或使用显示模板(如果您只想向用户显示视图模型属性的值):
@Html.DisplayFor(x => x.SomeSubModels)
因此,在设计ASP.NET MVC应用程序时(按此顺序),要遵循以下几条基本规则:
规则编号1.是真正的基础知识,也是最重要的基础知识。如果您不遵守此规则,那么您实际上并没有正确地执行ASP.NET MVC。