我正在使用带有sql server 2008 r2的asp.net
我正在建立一个网站,用户可以根据数据库中的信息运行报告。对于其中一个报告,我有大约6个复选框列表,它们根据数据库中的信息动态加载,然后用户可以选择某些框来缩小将包含在报告中的信息。
填充这些复选框列表的数据不会更新,但每隔几天就会更新一次。现在,我在每个复选框列表的初始化控件事件中加载了复选框。每次我选择一个不同的选项卡,然后回到包含这些复选框列表的选项卡时,似乎每次重新加载复选框列表,这很慢,大约需要6-10秒。
我不熟悉缓存,这是否有助于缓存加载到复选框列表中的数据,以便网站不需要执行连续加载?
答案 0 :(得分:1)
是的,缓存在这种情况下会有所帮助。
您可以在此处详细了解缓存应用程序数据:http://msdn.microsoft.com/en-us/library/6hbbsfk6(v=vs.100).aspx
您可以在数据访问层缓存,然后您的逻辑将是:
有关如何添加和读取缓存的具体信息,请参阅上面的链接。
答案 1 :(得分:0)
是 如果你是通过Ajax加载数据的复选框,那么你应该使用ASP.NET输出缓存功能。
如果在服务器上呈现它们 - 您可以将数据存储在某些DataObject(某个对象的单个或静态字段)中,以便它可供服务器所服务的所有请求使用。
您可以将此功能包装在单个对象中,初始化时从数据库加载数据,然后在每次获取数据时检查是否应重新加载(并在需要时重新加载)