SqlDependency не работает выборочно? - PullRequest
0 голосов
/ 17 ноября 2010

Я пытаюсь наблюдать некоторые данные в моем 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();
}

Проблема в том, что мне нужен только обратный вызов, если столбец «Имя» изменяется. Но OnQueryChanged также вызывается, если изменяется другой столбец таблицы «Персоны», например:

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

Это предполагаемое поведение SqlDependency или я ошибаюсь в его использовании?

1 Ответ

1 голос
/ 17 ноября 2010

Кажется, что можно наблюдать только целые таблицы (http://social.msdn.microsoft.com/Forums/en-US/sqlservicebroker/thread/acb94617-bafc-4e28-bc63-ddfd23ab2379) - это правильно?

...