cho*_*bo2 9 .net c# asp.net asp.net-mvc
我的视图不是强类型的.但是我在这个视图中有一个强类型的局部视图.
如何将模型传递给此强类型视图?
我试过类似的东西
public ActionResult Test()
{
MyData = new Data();
MyData.One = 1;
return View("Test",MyData)
}
Run Code Online (Sandbox Code Playgroud)
在我的TestView中
<% Html.RenderPartial("PartialView",Model); %>
Run Code Online (Sandbox Code Playgroud)
这给了我一个stackoverflow异常.所以我不知道如何传递它.当然,如果可能的话,我不想让测试视图强烈输入,如果我在该视图中有10个强类型的局部视图,我需要像某种包装器.
您应该扩展您的模型,以便它可以为视图提供所有必需的字段(这称为 ViewModel),或者您可以使用 ViewData 单独提供它们。
public ActionResult Test()
{
MyData = new Data();
MyData.One = 1;
ViewData["someData"]=MyData;
return View();
}
Run Code Online (Sandbox Code Playgroud)
然后:
<% Html.RenderPartial("PartialView",ViewData["someData"]); %>
Run Code Online (Sandbox Code Playgroud)
ViewData 是一个很好的松散类型字典