最近我一直忙于编写MVC 4网站,我需要在所有会话中保留一些值,所以我决定使用“应用程序状态”对象。 因为在Global.asax.cs中存在的MvcApplication类是HttpApplication类型并且保证在Application Start中初始化,所以我认为它对于“Application State”对象是一个很好的参考,所以我在里面创建了一个Singleton这个类是这样的:
public class MvcApplication : HttpApplication
{
public static HttpApplicationState Singleton;
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
AuthConfig.RegisterAuth();
Singleton = this.Application; //<== Here it is!
}
protected void Application_Error(object sender, EventArgs e)
{
}
}
所以我现在可以像这样访问这个对象:
MvcApplication.Singleton
因为我希望我的代码是标准代码并避免使用非标准代码,所以我想确保它是否是一种很好的方法来执行此类操作。
提前感谢您的关注。