StructureMap и SqlCacheDependency
-
04-07-2019 - |
Вопрос
Я пытаюсь включить SqlCacheDependency через IoC StructureMap, я использую LinqToSql. У меня есть код для работы с Linq-кэшированием, но я не совсем уверен, как настроить SqlCacheDependency, так как он требует его установки файл global.asa
void Application_Start(object sender, EventArgs e)
{
string connectionString = WebConfigurationManager.
ConnectionStrings["Catalog"].ConnectionString;
SqlDependency.Start(connectionString);
}
Однако мой репозиторий не использует global.asa, поскольку это просто библиотека (.dll), а не веб-приложение.
Есть идеи, как это сделать? Может быть, что добавить в метод application_start в конструктор моего репозитория?
Решение
Перемещение этого кода в конструктор должно быть в порядке.
Я часто помещаю статический метод Initialize () во все, что требует явной инициализации. Если мой код безопасен для внешнего использования, я также выкидываю свое собственное исключение UninitializedException, если метод вызывается до использования метода Initialize.
Мой Global.asax имеет тенденцию содержать несколько вызовов blah.Initialize () в результате.