Загрузка видов Razor из базы данных - путаница с VirtualPathProvider и CacheDependency - PullRequest
0 голосов
/ 31 января 2011

Я не совсем понимаю, как CacheDependency работает в VirtualPathProvider.GetCacheDependency().

Каждый пример, который я видел, создает зависимость кэша, основанную на каком-то физическом файле на диске, в то время как я возвращаю записи из базы данных.Прямо сейчас я переопределяю GetFileHash и просто возвращаю последнюю дату / время, когда соответствующая запись была изменена как хеш-строка.Это работает хорошо, и я не уверен, что использование элемента CacheDependency повлияет на производительность, так как мне все равно придется проверять базу данных каждый раз, когда запрашивается представление, чтобы убедиться, что оно обновлено, но мне все еще интереснокак использовать CacheDependency.

Кто-нибудь использовал это при возврате представлений из базы данных?

Обновление

Используя это сейчас (http://razorengine.codeplex.com/), который работает ОЧЕНЬ хорошо.

1 Ответ

2 голосов
/ 31 января 2011

Смысл CacheDependency - предоставить вам событие, которое будет вызвано, когда кэш станет недействительным (потому что файл на диске изменился).Посмотрите SqlCacheDependency , который делает то же самое с записями SQL Server.

...