c# - ASP.NET MVC 应用程序变量?

标签 c# asp.net-mvc variables

ASP.NET 中有应用程序变量吗?我想为所有用户存储一个对象,该对象应该每 5 分钟独立更新一次。但所有用户都应该始终看到它的最新版本。有什么建议(C#)吗?

最佳答案

您可以将应用程序范围的数据存储在 ASP.NET Cache 中.

使用Cache.Insert将您的项目添加到缓存中方法。将滑动过期值设置为 5 分钟的 TimeSpan。编写一个包装类来访问缓存中的对象。包装类可以提供从缓存中获取对象的方法。该方法可以检查该项目是否在缓存中,如果不在则加载它。

例如:

public static class CacheHelper
{
    public static MyObject Get()
    {
        MyObject obj = HttpRuntime.Cache.Get("myobject") as MyObject;

        if (obj == null)
        {
            // Create the object to insert into the cache
            obj = CreateObjectByWhateverMeansNecessary();

            HttpRuntime.Cache.Insert("myobject", obj, null, DateTime.Now.AddMinutes(5), System.Web.Caching.Cache.NoSlidingExpiration);

        }
        return obj;
    }
}

关于c# - ASP.NET MVC 应用程序变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1582476/

相关文章:

C# Dll导入麻烦

asp.net-mvc - MVC 4 Razor 文件上传

java - 如何允许在两个地方/循环中使用这个变量 ch?

postgresql - 有没有一种在 PostgreSQL 查询中使用变量的简单方法?

c# - 下载文件时遇到问题

c# - 枚举MSMQ中的所有传出队列,C#

asp.net-mvc - 更改域错误 - OpenId 身份验证请求包含未注册的域

asp.net mvc路由id参数

C++通过连接变量名获取变量值

c# - 将父控件的属性传递给子控件