次のコントローラーアクションがあります。
[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>
しかし、これは私にエラーを与えます:
暗黙的にvoid型をオブジェクトに変換することはできません
コントローラーのアクションが問題ないことを確認できる限り、このエラーが発生する原因は何ですか?
このような:
<p>
@Html.Action(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>
または、RenderAction
を次のように主張する場合:
<p>
@{Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId));}
</p>
個人的には、最初のものを好み、キーストロークを少なくします。
Html.Partial も動作するはずです:)
@Html.Partial("View", Model);
同じ問題がありました。私のために働いたのは、式を中括弧でカプセル化することです。
@{Html.RenderPartial("viewName", Model);}
Html.RenderActionとHtml.Actionの違い
目的ごとに異なるもの。上記のリンクをご覧ください。