【发布时间】:2016-10-07 19:19:40
【问题描述】:
假设有一个RenderPartial 检查某个条件是否为真,然后呈现页面。
先检查条件,然后调用RenderPartial,是否有任何性能优势?我确信这种技术对RenderAction 的性能有好处,因为我们基本上可以通过 MVC 生命周期步骤进行短路。但我在想,既然RenderPartial“直接”进入视图,它可能不会有同样的好处。
示例(检查 RenderPartial 中的条件):
myPage.cshtml
@model Namespace.AdObject
@{ Html.RenderPartial("~/Views/Ad.cshtml", Model); }
~/Views/Ad.cshtml
@model Namespace.AdObject
@if (Model != null && Model.AdScript != null)
{
// render the ad
}
示例(在 RenderPartial 之前检查条件):
myPage.cshtml
@model Namespace.AdObject
@if (Model != null && Model.AdScript != null)
{
Html.RenderPartial("~/Views/Ad.cshtml", Model);
}
~/Views/Ad.cshtml
@model Namespace.AdObject
// render the ad
【问题讨论】:
-
我相信你的做法是对的,直到条件为真才会调用渲染部分调用。
标签: c# asp.net asp.net-mvc asp.net-mvc-4 razor