gpt4 book ai didi

asp.net-mvc-3 - 在 ASP.NET-MVC3 中缓存数据有什么变化吗?

转载 作者:行者123 更新时间:2023-12-04 22:36:02 24 4
gpt4 key购买 nike

我的 MVC3 项目中需要一个应用程序级缓存。

我想在 Controller 中使用这样的东西:

using System.Web.Caching;    

protected IMyStuff GetStuff(string stuffkey)
{
var ret = Cache[stuffkey];
if (ret == null)
{
ret = LoadStuffFromDB(stuffkey);
Cache[stuffkey] = ret;
}
return (IMyStuff)ret;
}

这会失败,因为 Cache["foo"] 不会编译为“System.Web.Caching.Cache 是一种‘类型’但用作‘变量’”。

我看到 Cache 是一个类,但是当它在 Controller 中像 Session["asdf"] 一样使用时,网络上有很多示例,就像它是一个属性一样。

我究竟做错了什么?

最佳答案

Controller 中有一个名为 Session 的属性,但没有名为 Cache 的属性。
您应该使用 HttpRuntime.Cache 静态属性来获取 Cache 对象。
例如:

using System.Web.Caching;    

protected IMyStuff GetStuff(string stuffkey)
{
var ret = HttpRuntime.Cache[stuffkey];
if (ret == null)
{
ret = LoadStuffFromDB(stuffkey);
HttpRuntime.Cache[stuffkey] = ret;
}
return (IMyStuff)ret;
}

关于asp.net-mvc-3 - 在 ASP.NET-MVC3 中缓存数据有什么变化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6519969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com