2015-02-04 4 views
2

У меня есть следующий атрибут кэширования на моем методе контроллера:WebAPI OutputCache кэш недействительность

[CacheOutput(ClientTimeSpan = 14400, ServerTimeSpan = 14400)] 

Я пытаюсь очистить кэш. Тем не менее, после выполнения этой строки кода:

//clear cache 
cache.RemoveStartsWith(Configuration.CacheOutputConfiguration().MakeBaseCachekey("BeamsController", "Get")); 

Я все еще получаю 304 не модифицированный ответ без метода контроллера быть вызван.

Я использую эту библиотеку https://github.com/filipw/AspNetWebApi-OutputCache

ответ

1
[InvalidateCacheOutput("Get", typeof(BeamsController))] 

, кажется, работает, вместо 'ручной недействительности' (RemoveStartsWith), выше.

В самом деле, после прочтения исходного кода атрибута, создается впечатление, что документация не так и должно быть:

cache.RemoveStartsWith(Configuration.CacheOutputConfiguration().MakeBaseCachekey("Beams", "Get")); 

, который работает, как ожидалось, вызвав метод.