Несмотря на то, что я указал уникальный ключ, кажется, что следующий код вернет одно значение для 5 запросов, затем другое для следующей пары, затем вернется к значению, сохраненному в исходном запросе, и продолжит, пока не будет 10 разные объекты хранятся под одним ключом.
Тогда кажется почти случайным, какое из этих значений он вернет из кеша.
string strDateTime = string.Empty;
string cachename = "datetimeexample";
object cachedobject = HttpRuntime.Cache.Get(cachename);
if (cachedobject != null)
strDateTime = (string)cachedobject;
else
{
strDateTime = DateTime.Now.ToString();
HttpRuntime.Cache.Insert(cachename, strDateTime, null, DateTime.MaxValue, TimeSpan.FromDays(10), CacheItemPriority.NotRemovable, null);
}
Response.Write(strDateTime +" keys:"+ HttpRuntime.Cache.Count);
Очень смущен, это из-за многопоточности или что-то?