Сделайте C# Зависимость запускать только тогда, когда новые строки были вставлены в MS SQL с конкретным значением столбц ⇐ C#

Место общения программистов C#
Anonymous
Сделайте C# Зависимость запускать только тогда, когда новые строки были вставлены в MS SQL с конкретным значением столбц

Сообщение Anonymous »

Я хочу получить событие «Изменение», когда новые строки были вставлены в MS SQL с конкретным значением столбца. < /p>

Ниже приведен код, который я в настоящее время использует, который работает довольно хорошо, за исключением того, что оно запускает событие, когда какое -либо значение строки в [Status] изменяется на /или из «новой».public void InitialiseDependencyWORK(Action onDependencyMethod)
{

this.onDependencyMethod = onDependencyMethod;

string sqlCommandText = "SELECT [Symbol] FROM [JJ].[Orders] WHERE [Status] = 'NEW'";

using (SqlCommand command = new SqlCommand(sqlCommandText, conn))
{

Dependency = new SqlDependency(command);

Dependency.OnChange += new OnChangeEventHandler(OnDependencyChange);

using (SqlDataReader reader = command.ExecuteReader())
{
// Process the DataReader.
}
}

}

void OnDependencyChange(object sender,
SqlNotificationEventArgs e)
{
// Handles NEW rows
}
< /code>

Мне интересно только тогда, когда новая строка вставлена ​​с [Status] = «новое», но это событие также запускает, когда нет новой вставки, но [Status] изменился с «нового» к чему -либо еще. < /p>

Как я могу получить спуск только, когда я получил новое insert? Событие триггера, когда новостные строки были вставлены как строка 2 ниже: < /p>

OrderID, Status
1,Done
2,NEW
< /code>

Я не хочу, чтобы он запустил, потому что в строке 2 только что обновлено статус - на самом деле нет новой строки для обработки: < /p>

OrderID, Status
1,Done
2,Done
< /code>

Как я могу это достичь? < /p>

Подробнее здесь: https://stackoverflow.com/questions/553 ... into-ms-sq

Вернуться в «C#»