2017-07-25 38 views
0

我試圖使用SqlDependencyEx問題是OnDataChange事件沒有在控制器中被觸發,我已經啓用了Service Broker。 Here's是代碼:控制器中的SqlDependencyEx事件沒有被觸發

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(); 
    } 

此致

回答

1

問題解決了,here's的代碼:

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(); 

此致

相關問題