Asp.Net MVC 5 使用不同的模型调用 PartialView
Asp.Net MVC 5 calling PartialView with a different Model
我想从我的 Index.cshtml 调用一个 PartialView,它使用我想调用 PartialView 的不同模型。
我的Index.cshtml
@model IEnumerable<myappname.Models.Post>
...
@Html.Partial("_Block")
_Block.cshtml
@model myappname.Models.RightBlock
<img src="@Model.blockContent" width="330" />
Controller.cs
...
public PartialViewResult _Block()
{
int id = 2;
RightBlock rb0 = db.RightBlocks.Find(id);
return PartialView(rb0);
}
...
请忽略id,因为我只想静态调用它,而不是动态调用它。
当我 运行 索引页时,出现错误:
The model item passed into the dictionary is of type
'System.Data.Entity.Infrastructure.DbQuery`1[myappname.Models.Post]',
but this dictionary requires a model item of type
'myappname.Models.RightBlock'.
如何通过不同的模型调用PartialView?
谢谢。
使用Html.Action
Index.cshtml
@Html.Action("Block")
Controller.cs
public ActionResult Block()
{
// Your code
return PartialView("_Block.cshtml");
}
我想从我的 Index.cshtml 调用一个 PartialView,它使用我想调用 PartialView 的不同模型。
我的Index.cshtml
@model IEnumerable<myappname.Models.Post>
...
@Html.Partial("_Block")
_Block.cshtml
@model myappname.Models.RightBlock
<img src="@Model.blockContent" width="330" />
Controller.cs
...
public PartialViewResult _Block()
{
int id = 2;
RightBlock rb0 = db.RightBlocks.Find(id);
return PartialView(rb0);
}
...
请忽略id,因为我只想静态调用它,而不是动态调用它。 当我 运行 索引页时,出现错误:
The model item passed into the dictionary is of type 'System.Data.Entity.Infrastructure.DbQuery`1[myappname.Models.Post]', but this dictionary requires a model item of type 'myappname.Models.RightBlock'.
如何通过不同的模型调用PartialView? 谢谢。
使用Html.Action
Index.cshtml
@Html.Action("Block")
Controller.cs
public ActionResult Block()
{
// Your code
return PartialView("_Block.cshtml");
}