PartialViewResult を返すコントローラーとアクションがあり、それを使用して表示します。テストのために、現在の DateTime を出力し (動作中)、ビューでそれが null かどうかを確認するので、何が得られたかがわかります。
そのビューを別のビューに「埋め込もう」とするとHtml.Action
、現在の日時が取得されるため、アクションが呼び出されます。
しかしHtml.Partial
、ビューがnullでレンダリングされている場合、アクションメソッドは呼び出されません。また、2 つのブレークポイントとデバッガーも確認します。後者の場合、my アクション メソッドは呼び出されません。
アクション方法:
public PartialViewResult Test()
{
return PartialView(DateTime.Now);
}
(一部) ビュー:
@model DateTime?
<p>@(Model ?? DateTime.MinValue)</p>
メインビューからの呼び出しは または のいずれ@Html.Action("Test")
か@Html.Partial("Test")
です。