不能将typesvoid隐式转换为对象。 .NET MVC PartialViewResult
我有以下控制器操作:
[ChildActionOnly] public virtual PartialViewResult ListActions(int id) { var actions = meetingActionRepository.GetAllMeetingActions(id); return PartialView(actions); }
而下面的动作链接(使用t4MVC和剃刀语法)
<p> @Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId)) </p>
但是这给了我错误:
不能将typesvoid隐式转换为对象
据我可以告诉控制器的行动是好的,那么可以给我这个错误?
喜欢这个:
<p> @Html.Action(MVC.MeetingActions.ListActions(Model.MeetingId)) </p>
或者如果你坚持这样的RenderAction
:
<p> @{Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId));} </p>
我个人更喜欢第一个,减less击键。
Html.Partial也应该工作:)
@Html.Partial("View", Model);
我遇到过同样的问题。 对我来说有效的是将它expression式封装在大括号中 。
@{Html.RenderPartial("viewName", Model);}
Html.RenderAction和Html.Action的区别
不同的事情为不同的目的。 看看上面的链接。