不能将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的区别

不同的事情为不同的目的。 看看上面的链接。