parmCache[cacheKey] petshop3.0 为什么这个可以缓存?
parmCache[cacheKey] petshop3.0 为什么这个可以缓存?
或者说这个不是缓存,
我的想法是,它是不是只代表访问时这个页面有效(每次请求都一个线程吧) 这样的话定义一个变量不是可以替代它了。或许它像application cache 还是session
private static Hashtable parmCache = Hashtable.Synchronized(new Hashtable());
public static void CacheParameters(string cacheKey, params SqlParameter[] cmdParms) {
parmCache[cacheKey] = cmdParms;
}
//取出来的
public static SqlParameter[] GetCachedParameters(string cacheKey) {
SqlParameter[] cachedParms = (SqlParameter[])parmCache[cacheKey];
if (cachedParms == null)
return null;
SqlParameter[] clonedParms = new SqlParameter[cachedParms.Length];
for (int i = 0, j = cachedParms.Length; i < j; i++)
clonedParms[i] = (SqlParameter)((ICloneable)cachedParms[i]).Clone();
return clonedParms;
}