в php есть include_once
, Я хотел бы иметь возможность сделать то же самое с asp.net @Html.Partial
, Есть ли встроенная функциональность для этого?
Я думаю, что в ASP.NET такой функциональности нет, но вы можете написать свою собственную:
public static class HtmlPartialHelper
{
public static MvcHtmlString PartialOnce(this HtmlHelper htmlHelper, string partialViewName)
{
if (!htmlHelper.ViewContext.RequestContext.HttpContext.Items.Contains(partialViewName))
{
htmlHelper.ViewContext.RequestContext.HttpContext.Items.Add(partialViewName, ""); //any value is good...
return htmlHelper.Partial(partialViewName);
}
return null; //May be string.Empty is better
}
public static bool RenderPartialOnce(this HtmlHelper htmlHelper, string partialViewName)
{
if (!htmlHelper.ViewContext.RequestContext.HttpContext.Items.Contains(partialViewName))
{
htmlHelper.ViewContext.RequestContext.HttpContext.Items.Add(partialViewName, "");
htmlHelper.RenderPartial(partialViewName);
return false;
}
return true;
}
}
Я не эксперт по PHP, но надеюсь, верные значения верны …
Других решений пока нет …