Добавление кеша ASP.NET vs вставки

В чем разница между

Cache.Add 

и

Cache.Insert

методы?

В каких ситуациях я должен использовать первый, а второй?

Ответ 1

Insert будет перезаписывать существующее кешированное значение одним и тем же ключом; Add не работает (ничего не делает), если есть существующее кешированное значение с тем же ключом. Поэтому есть аргумент в пользу того, что вы всегда должны использовать Insert, поскольку первый раз, когда выполняется код, он поместит ваш объект в кеш, а когда он будет запущен впоследствии, он обновит кешированное значение.

Ответ 2

Cache.Add() также возвращает кешированный объект из Cache после его добавления:

string cachedItem = Cache.Add("cachedItem", ....);

Ответ 3

Для кеширования данных можно использовать методы Cache.Add() или Cache.Insert(). Единственное различие между ними - метод Cache.Add() возвращает объект, который вы хотите кэшировать. Так что скажем, хотите ли вы использовать объект и кешировать его. Вы можете сделать это в одной строке кода с помощью Cache.Add().

Cache.Insert() методы имеют 4 разных типа перегруженных методов, тогда как Cache.Add() имеет только один.