ASP.NET中的缓存问题

ASP.NET中的缓存问题,asp.net,caching,Asp.net,Caching,我在asp.net页面中有一个对象列表。每个对象表示一个商店的产品,由产品名称、产品id、价格、可用数量等组成。客户可以从下拉列表中选择产品,相应的字段(如价格、数量等)会自动填入相应的值。出于性能原因,当页面加载时,我已经从数据库中获取了整个产品列表,并将其存储在Cache['Product']变量中,以便在发生下拉列表的值更改事件时,我可以在不进行任何数据库查询的情况下获取相应的值 这个策略在我的本地开发环境中运行良好,但是当页面上传到服务器时,相应的字段没有得到适当的值。即使从下拉列表中选

我在asp.net页面中有一个对象列表。每个对象表示一个商店的产品,由产品名称、产品id、价格、可用数量等组成。客户可以从下拉列表中选择产品,相应的字段(如价格、数量等)会自动填入相应的值。出于性能原因,当页面加载时,我已经从数据库中获取了整个产品列表,并将其存储在Cache['Product']变量中,以便在发生下拉列表的值更改事件时,我可以在不进行任何数据库查询的情况下获取相应的值

这个策略在我的本地开发环境中运行良好,但是当页面上传到服务器时,相应的字段没有得到适当的值。即使从下拉列表中选择了产品,相应的字段也没有显示适当的价格、数量等。我的缓存策略似乎不起作用

我不知道这里怎么了。我已按如下方式设置缓存变量:

if(Cache["ProductList"] == null)
            Cache.Insert("ProductList", Product, null, DateTime.Now.AddHours(1), Cache.NoSlidingExpiration);
当我需要检索缓存值时,我的操作如下:

List<Product> CachedProduct = (List<Product> )Cache["ProductList"];

我完全不知道这里有什么问题。我需要一些帮助:

如果您在本地遇到与在服务器上不同的行为,这可能与服务器的配置有关。如果您有权访问,请检查是否存在一些差异。否则,您可能希望发布更详细的代码示例

只有一台服务器还是几个?您的ProductList过程是否正在检索正确的数据?你的数据正确吗?你能澄清什么是不工作吗?什么都没出现?出现错误的项目?二级下拉列表没有看到正确的值?没有发生的事情很重要:我的意思是,当用户从下拉列表中选择不同的产品时,也就是说,当下拉列表的selectedIndexChanged事件发生时,数量字段和价格字段中的值应该根据新产品而变化。现在它有时会改变,有时不会。但是在我的本地主机上,这不会导致任何问题。@Rubens:是的,我的产品列表过程正在检索正确的数据,它们都可以在缓存中使用。