使用Application对象

本文关键字:对象 Application 使用 | 更新日期: 2023-09-27 18:22:41

我在使用Application对象时遇到问题。我来自Classic ASP,所以我知道如何在那里使用它,global.asa等,所以有人能向我解释如何在MVC中使用它吗?

在我的Global.Asax中,它看起来像这样:

public class MvcApplication : System.Web.HttpApplication
{
    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
        Application.Add("Version", 1); // I want to add this
    }
}

那么我该如何访问我的代码呢?

我在控制器和视图中都尝试过:

using System.Web;
int Version = Application["Version"];

并且在两者中都出现了编译错误:

当前上下文中不存在名称"Application"

有人能帮我吗?

使用Application对象

尝试以这种方式访问:

 HttpContext.Current.Application["Version"] = 1;

在你的控制器中试试这个:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        int Version = (int)HttpContext.Application["Version"];
        return View();
    }
}

和全球:

protected void Application_Start()
{
    AreaRegistration.RegisterAllAreas();
    FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
    RouteConfig.RegisterRoutes(RouteTable.Routes);
    BundleConfig.RegisterBundles(BundleTable.Bundles);
    Application.Add("Version", 1); // I want to add this
}

我认为您只能从操作和视图

中获得HttpContext