cannot implicitly convert type void to object. .NET MVC PartialViewResult
C#asp.net Mvcasp.net Mvc-3T4mvcC# Problem Overview
I have the following controller action:
[ChildActionOnly]
public virtual PartialViewResult ListActions(int id)
{
var actions = meetingActionRepository.GetAllMeetingActions(id);
return PartialView(actions);
}
And the following action link (using t4MVC and the razor syntax)
<p>
@Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>
However this gives me the error:
>cannot implicitly convert type void to object
As far as i can tell the controller action is ok, so what could be giving me this error?
C# Solutions
Solution 1 - C#
Like this:
<p>
@Html.Action(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>
or if you insist on RenderAction
like this:
<p>
@{Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId));}
</p>
Personally I prefer the first, makes fewer keystrokes.
Solution 2 - C#
Html.Partial should work as well :)
@Html.Partial("View", Model);
Solution 3 - C#
I had the same issue. What worked for me is to encapsulate the expression it in curly brackets.
@{Html.RenderPartial("viewName", Model);}
Solution 4 - C#
https://stackoverflow.com/questions/2955261/difference-between-html-renderaction-and-html-action
Different things for different purposes. Check out the above link.