我收到了以下错误。
参数null异常未被用户代码处理。 值不能为空。 参数名称:值
在大胆地方的以下代码中。
public static void InsertIntoCache(string cacheKey, object value)
{
HttpRuntime.Cache.Insert(cacheKey, value, null, DateTime.Now.Add(new TimeSpan(0, CacheDuration, 0)), **Cache.NoSlidingExpiration**, CacheItemPriority.Default,null);
}
请帮助我。
答案 0 :(得分:2)
Cache.Insert()
的方法签名(取自MSDN):
public void Insert (
string key,
Object value,
CacheDependency dependencies,
DateTime absoluteExpiration,
TimeSpan slidingExpiration,
CacheItemPriority priority,
CacheItemRemovedCallback onRemoveCallback
)
错误告诉您value
方法中的第二个参数.Insert()
不能为空。这意味着您的方法被调用为null作为第二个参数,如:
InsertIntoCache("some_key", null); // this will throw an exception.
基本上,你不能缓存' null'作为一种价值。如果您在this link向下滚动到"例外",则表示在以下情况下Insert()会抛出ArgumentNullException
:
key或value参数是空引用