任何人都可以解釋爲什麼不能將空對象插入到ASP.NET緩存中嗎?ASP.NET無法緩存空值
string exampleItem = null;
HttpRuntime.Cache.Insert("EXAMPLE_KEY",
exampleItem,
Nothing,
DateTime.Now.AddHours(1),
System.Web.Caching.Cache.NoSlidingExpiration);
異常錯誤消息指出「值」對象不能爲空。在我的應用程序中,我們爲什麼要在緩存中存儲空值是有正當理由的。
字典 *不*區分(這是所有從我的頭頂,所以道歉,對任何愚蠢的拼寫錯誤。) null並且沒有值。獲取不存在的鍵的值將引發KeyNotFoundException,並存儲空值是有效的。 –
2009-06-09 03:12:56
啊。我只測試了Hashtable。更有證據表明Cache基於Hashtable,並具有預插入檢查。 – 2009-06-09 03:32:37
派對遲到,但僅供參考,似乎MemoryCache通過返回'null'來傳遞一個丟失的鍵。 所以,如果它允許插入空值,它不會知道兩者之間的差異。 – GettnDer 2017-09-22 15:34:28