Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SqlDependency没有选择性地工作?_C#_Sql Server 2005_Sqldependency - Fatal编程技术网

C# SqlDependency没有选择性地工作?

C# SqlDependency没有选择性地工作?,c#,sql-server-2005,sqldependency,C#,Sql Server 2005,Sqldependency,我试图观察SQL server express 2005中的一些数据,如下所示: SqlDependency.Stop(connectionString); SqlDependency.Start(connectionString); using (var con = new SqlConnection(connectionString)) { con.Open(); var queryString = "SELECT [Name] FROM [dbo].[Persons]"

我试图观察SQL server express 2005中的一些数据,如下所示:

SqlDependency.Stop(connectionString);
SqlDependency.Start(connectionString);

using (var con = new SqlConnection(connectionString))
{
    con.Open();

    var queryString = "SELECT [Name] FROM [dbo].[Persons]";
    var command = new SqlCommand(queryString, con);
    var dependency = new SqlDependency(command);

    dependency.OnChange += OnQueryChanged;

    command.ExecuteReader();
}
var context = new Entities();
context.Persons.First().Street = "Foo";
context.SaveChanges();
问题是,我只对“Name”列更改时的回调感兴趣。但是,如果表“Persons”的另一列发生更改,也会调用OnQueryChanged,如下所示:

SqlDependency.Stop(connectionString);
SqlDependency.Start(connectionString);

using (var con = new SqlConnection(connectionString))
{
    con.Open();

    var queryString = "SELECT [Name] FROM [dbo].[Persons]";
    var command = new SqlCommand(queryString, con);
    var dependency = new SqlDependency(command);

    dependency.OnChange += OnQueryChanged;

    command.ExecuteReader();
}
var context = new Entities();
context.Persons.First().Street = "Foo";
context.SaveChanges();

这是SqlDependency的预期行为还是我在使用中犯了错误?

似乎只能观察整个表(http://social.msdn.microsoft.com/Forums/en-US/sqlservicebroker/thread/acb94617-bafc-4e28-bc63-ddfd23ab2379)-这是否正确?

将来,您应该编辑原始问题,而不是添加答案。