Asp.net mvc 4 在HTMLHelper之间共享数据
我正在寻找一种在HTMLHelper之间共享数据的方法。目标是设置一次配置,而不是每次调用都传递一个参数。在下面的示例中,我将设置表单类型以确定网格配置:Asp.net mvc 4 在HTMLHelper之间共享数据,asp.net-mvc-4,Asp.net Mvc 4,我正在寻找一种在HTMLHelper之间共享数据的方法。目标是设置一次配置,而不是每次调用都传递一个参数。在下面的示例中,我将设置表单类型以确定网格配置: @{Html.SetFormType(HtmlHelpers.FormType.Boxed);} @FormItemFor(m=>m.LoginName) @FormItemFor(m=>m.Password) public static void SetFormType(此HtmlHelper助手,FormType FormType) {
@{Html.SetFormType(HtmlHelpers.FormType.Boxed);}
@FormItemFor(m=>m.LoginName)
@FormItemFor(m=>m.Password)
public static void SetFormType(此HtmlHelper助手,FormType FormType)
{
helper.ViewBag.FormType=FormType;
helper.ViewContext.ViewBag.FormType=FormType;
}
设置ViewBag
不会在后续的@Html
调用中保持不变。设置ViewContext.ViewBag
仍然存在,但这样做安全吗
现有的方法
EnableUnobtrusiveJavaScript
是在ScopeCache
类的实例中设置的,该类又被添加到HttpContext.Items
。也许这也是存储我的数据的候选对象?您可以使用基于请求的范围对象HttpContext.Current.Items
,因为HttpContext.Current
实际上是请求中唯一唯一唯一且始终存在的容器
干杯
附言:不要把所有的东西都直接放进物品里。只需在那里添加一个控制器项,然后进行此操作