C# 控制器内的SqlDependencyEx事件未被激发

C# 控制器内的SqlDependencyEx事件未被激发,c#,asp.net-mvc-4,sqldependency,sqldependencyex,C#,Asp.net Mvc 4,Sqldependency,Sqldependencyex,我正在尝试使用SqlDependencyEx。问题是控制器中没有触发OnDataChange事件,我已经启用了ServiceBroker。以下是代码: private const string CONNECTION_STRING = "Server=LFTCMCPTP83;Database=Database;Trusted_Connection=True;MultipleActiveResultSets=true; Integrated Security=false;User ID=us

我正在尝试使用SqlDependencyEx。问题是控制器中没有触发OnDataChange事件,我已经启用了ServiceBroker。以下是代码:

    private const string CONNECTION_STRING = "Server=LFTCMCPTP83;Database=Database;Trusted_Connection=True;MultipleActiveResultSets=true; Integrated Security=false;User ID=used_id;Password=password";
    private const string DATABASE_NAME = "db_name";
    private const string TABLE_NAME = "table_name";
    private const string SCHEMA_NAME = "dbo";
    private SqlDependencyEx sqlDependency = new SqlDependencyEx(CONNECTION_STRING, DATABASE_NAME,
    TABLE_NAME, SCHEMA_NAME);
    private void RegisterNotification()
    {
        sqlDependency.TableChanged += OnDataChange;
        sqlDependency.Start();
    }
    private void OnDataChange(object sender, SqlDependencyEx.TableChangedEventArgs e)
    {
        //Code
    }
    public IActionResult Create(){
         RegisterNotification();
    }
private const string CONNECTION_STRING = "Server=LFTCMCPTP83;Database=Database;Trusted_Connection=True;MultipleActiveResultSets=true; Integrated Security=false;User ID=used_id;Password=password";
private const string DATABASE_NAME = "db_name";
private const string TABLE_NAME = "table_name";
private const string SCHEMA_NAME = "dbo";
private SqlDependencyEx sqlDependency = new SqlDependencyEx(CONNECTION_STRING, DATABASE_NAME,
TABLE_NAME, SCHEMA_NAME);
listener.TableChanged += (o, args) =>
{
   //Code...
};
listener.Start();
listener.Stop();

致以最诚挚的问候

问题已解决,以下是代码:

    private const string CONNECTION_STRING = "Server=LFTCMCPTP83;Database=Database;Trusted_Connection=True;MultipleActiveResultSets=true; Integrated Security=false;User ID=used_id;Password=password";
    private const string DATABASE_NAME = "db_name";
    private const string TABLE_NAME = "table_name";
    private const string SCHEMA_NAME = "dbo";
    private SqlDependencyEx sqlDependency = new SqlDependencyEx(CONNECTION_STRING, DATABASE_NAME,
    TABLE_NAME, SCHEMA_NAME);
    private void RegisterNotification()
    {
        sqlDependency.TableChanged += OnDataChange;
        sqlDependency.Start();
    }
    private void OnDataChange(object sender, SqlDependencyEx.TableChangedEventArgs e)
    {
        //Code
    }
    public IActionResult Create(){
         RegisterNotification();
    }
private const string CONNECTION_STRING = "Server=LFTCMCPTP83;Database=Database;Trusted_Connection=True;MultipleActiveResultSets=true; Integrated Security=false;User ID=used_id;Password=password";
private const string DATABASE_NAME = "db_name";
private const string TABLE_NAME = "table_name";
private const string SCHEMA_NAME = "dbo";
private SqlDependencyEx sqlDependency = new SqlDependencyEx(CONNECTION_STRING, DATABASE_NAME,
TABLE_NAME, SCHEMA_NAME);
listener.TableChanged += (o, args) =>
{
   //Code...
};
listener.Start();
listener.Stop();
致意