我正在使用webmethod从数据库中获取数据并将其存储在静态变量中,这样下次它就不会经常访问数据库becoz.创建静态变量似乎不是一个正确的解决方案,这对于这种情况来说是一个非常有用的东西.
例如
public static List<SupplierGridData> lstFullSupplierData;
public static List<SupplierGridData> GetProductData()
{
if (lstFullSupplierData == null)
{
//first time get data from database
lstFullSupplierData = new List<SupplierGridData>();
lstFullSupplierData = new POProcess().GetInquiryDetails();
}
else
{
//use lstFullSupplierData which holds data
}
}
Run Code Online (Sandbox Code Playgroud)
你想要的是缓存:
http://msdn.microsoft.com/en-us/library/xsbfdd8c.aspx
更具体地说,缓存数据:
http://msdn.microsoft.com/en-us/library/6hbbsfk6.aspx
还有会话状态:
http://msdn.microsoft.com/en-us/library/ms972429.aspx
这是按应用程序和每用户的形式出现的.您还可以更改会话状态的后备存储.