Как сделать многопользовательские обновления экрана, управляемые событиями?

2

Я работаю над программой Delphi, которая использует базу данных firebird для хранения своих данных. Он использует домашний рост. система. Когда два пользователя просматривают одни и те же данные, например, в сетке данных, а один изменяет что-то, другой экран немедленно обновляется. Как это работает, объекты в одной программе сохраняют их самостоятельно в базе данных. В базе данных есть триггер, который регистрирует это изменение во вспомогательной таблице журналов изменений. Запись в эту таблицу журналов изменений вызывает событие. Вторая программа прослушивает это событие и знает из записи в таблице журнала изменений, какой объект был изменен. Он перезагрузит этот объект и поднимет событие внутри этой программы. Это событие вызовет все экраны, отображающие этот объект, и все объекты, которые основывают свое поведение на этом объекте для обновления. Мы хотели бы переключиться на .Net и, возможно, на MS SQL. Мой вопрос: 1) Как это сделать с помощью MS SQL? 2) Есть ли рамки, которые поддерживают это? Поэтому мне не придется переносить это на .Net

Теги:
events

2 ответа

1

Так как версии .Net Framework 2.0 и MSSqlServer 2005 поддерживают оповещения об изменениях, используйте класс SqlDependency. У вас есть пример в codeproject.

Посмотрите также на некоторые рекомендации об использовании уведомлений в msdn.

0

не похоже, что это было бы слишком сложно реализовать в С#. попробуйте использовать "шаблон наблюдателя" с любыми настраиваемыми режимами, которые вы хотите.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню