J'ai l'action du contrôleur suivante:
[ChildActionOnly]
public virtual PartialViewResult ListActions(int id)
{
var actions = meetingActionRepository.GetAllMeetingActions(id);
return PartialView(actions);
}
Et le lien d'action suivant (en utilisant t4MVC et la syntaxe de rasoir)
<p>
@Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>
Cependant cela me donne l'erreur:
ne peut pas implicitement convertir le type void en object
Autant que je sache, l'action du contrôleur est ok, alors qu'est-ce qui pourrait me donner cette erreur?
Comme ça:
<p>
@Html.Action(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>
ou si vous insistez sur RenderAction
comme ceci:
<p>
@{Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId));}
</p>
Personnellement, je préfère le premier, fait moins de frappes.
Html.Partial devrait également fonctionner :)
@Html.Partial("View", Model);
J'ai eu le même problème. Ce qui a fonctionné pour moi, c’est d’encapsuler l’expression dans accolades.
@{Html.RenderPartial("viewName", Model);}
Différence entre Html.RenderAction et Html.Action
Différentes choses à des fins différentes. Consultez le lien ci-dessus.