Как проверить, включен ли SqlCacheDependency во время выполнения?
-
21-09-2019 - |
Вопрос
Я использую SqlCacheDependency с опросом в проекте ASP.NET.
Иногда мне нужно отключить SqlCacheDependency, что я делаю следующим образом:
<caching>
<sqlCacheDependency enabled="false" pollTime="10000">
<databases>
<!-- ... -->
</databases>
</sqlCacheDependency>
</caching>
Однако это вызывает ошибку в моем коде, когда я выполняю HttpRuntime.Cache.Insert() с зависимостью SQL.
Чтобы включить зависимость от кэша SQL, установите для атрибута «enabled» значение «true» в разделе файла конфигурации.
Есть ли способ программно проверить, включен ли этот параметр?
Решение
Следующий код работал у меня...
//using System.Web.Configuration;
Configuration webConfig = WebConfigurationManager.OpenWebConfiguration("/");
string configPath = "system.web/caching/sqlCacheDependency";
SqlCacheDependencySection section = (SqlCacheDependencySection)webConfig.GetSection(configPath);
bool enabled = section.Enabled;
Не связан с StackOverflow