Gin*_*Gin 7 ienumerable model renderpartial asp.net-mvc-3
我试图在MVC 3中更改我的视图模型时遇到问题.
第一个视图(index.cshtml):
@model IEnumerable<MyProgram.MyFrogCollection>
<h1>Welcome to my frog collection</h1>
@foreach(MyProgram.Frog frog in Model)
{
  <div class="frogDetails">
    @RenderPage("ShowFrogDetails.cshtml", frog);
  </div>
}
第二个视图(ShowFrogDetails.cshtml),我想在整个网站上使用:
@model MyProgram.Frog
<h3>Name:</h3><div class="detail">@Model.Name</div>
<h3>Colour:</h3><div class="detail">@Model.Colour</div>
但是,当我在传入青蛙对象列表后尝试运行页面index.cshtml时,在获取@RenderPage行时出现以下错误:
'/'应用程序中的服务器错误.传递到字典中的模型项的类型为'System.Collections.Generic.List`1 [MyProgram.Frog]',但此字典需要"MyProgram.Frog"类型的模型项.
如果我要从ShowFrogDetails.cshtml中删除代码并将其放在index.cshtml的foreach循环内,那么结果就是我所期望的.但是,这不会重用现有代码.
无论如何我可以将模型更改为单个Frog对象以在RenderPage中使用吗?
干杯!
试试这样:
<div class="frogDetails">
    @Html.Partial("ShowFrogDetails", frog)
</div>
| 归档时间: | 
 | 
| 查看次数: | 4180 次 | 
| 最近记录: |