我正在集成SqlCacheDependency以在LinqToSQL数据上下文中使用。

我正在对此处找到的Linq查询使用扩展类-http://code.msdn.microsoft.com/linqtosqlcache

我已经连接了代码,当我打开页面时出现此异常-

“当前数据库的SQL Server Service Broker未启用,因此不支持查询通知。如果要使用通知,请为此数据库启用Service Broker。”

它来自global.asax中的此事件

        protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);
        //In Application Start Event
        System.Data.SqlClient.SqlDependency.Start(new dataContextDataContext().Connection.ConnectionString);

    }

我的问题是
  • 如何在SQL Server 2008数据库中启用Service Broker?我试图运行此查询。ALTER DATABASE表名SET ENABLE_BROKER但它永远不会结束并且永远运行,我必须手动停止它。
  • 一旦在SQL Server 2008中设置了此功能,它会过滤到我的DataContext,还是我也需要在此配置一些内容?

  • 谢谢你的帮助

    真诚地

    最佳答案

    万一其他人正在寻找解决此问题的方法,以下命令对我很有用。它释放与数据库的所有其他连接,而不是等待。

    ALTER DATABASE [DBNAME] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE
    

    关于asp.net - 在SQL Server 2008中启用Service Broker,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2758976/

    10-09 14:30