CacheDependency от 2 или более других элементов кэша. (ASP.NET MVC3)

Я немного озадачен возможными зависимостями кеша в asp.net, и я не уверен, как использовать их.

Я хотел бы добавить элементы в HttpRuntime.Cache таким образом, чтобы эти элементы становились недействительными, если я изменяю другие элементы в кеше. Зависимости должны определяться ключом.

Мне нужна такая функция:

public MyObject LoadFromCache(string itemDescriptor, IEnumerable<string> dependencies)
{
    var ret = HttpRuntime.Cache[itemDescriptor] as MyObject;
    if (ret == null)
    {
        ret = LoadFromDataBase(itemDescriptor);

        //this is the part I'm not able to figure out. Adding more than one dependency items.
        var dep = new CacheDependency();
        dependencies.ForEach(o => dep.SomeHowAdd(o));

        HttpRuntime.Cache.Add(
            itemDescriptor, 
            ret, 
            dependencies, 
            System.Web.Caching.Cache.NoAbsoluteExpiration, 
            System.Web.Caching.Cache.NoSlidingExpiration, 
            Caching.CacheItemPriority.Normal, 
            null
        );
    }
    return ret;
}

Помогите мне с этим.

6
задан SoonDead 3 October 2011 в 07:47
поделиться