我正在尝试通过我的StructureMap IoC启用SqlCacheDependency,我正在使用LinqToSql我已完成代码来处理Linq缓存但不太确定如何设置SqlCacheDependency,因为它需要将其放入global.asa文件

void Application_Start(object sender, EventArgs e) 
{
    string connectionString = WebConfigurationManager.
        ConnectionStrings["Catalog"].ConnectionString;
    SqlDependency.Start(connectionString);
}

但是我的存储库不使用global.asa作为它的库(.dll)而不是Web应用程序。

任何想法如何做到这一点?也许将application_start方法中的内容放入我的存储库的构造函数中?

有帮助吗?

解决方案

将该代码移动到构造函数中应该没问题。

我经常在需要显式初始化的任何东西上放置一个静态的Initialize()方法。如果我的代码对外部使用是卫生的,如果在使用Initialize方法之前调用了一个方法,我也会抛出自己的UninitializedException。

我的Global.asax往往包含几个blah.Initialize()调用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top