2016-09-21 3 views
0

Вот мой сценарий:Как показывают изменения, сделанные одним экземпляром приложения Windows, на других случаях применения

Я должен разработать приложение WPF в C# .NET, который имеет два основных пользователей: головное Team (TL) и Технический специалист (OT). Это приложение будет работать на нескольких отдельных компьютерах в одной сети. Приложение будет использоваться операционным специалистом для просмотра списка номеров заданий, и руководитель группы сможет обновить список номеров заданий по мере необходимости.

Моя проблема заключается в том, что я не уверен, как отобразить эти изменения для Техники-технолога после того, как их привел руководитель команды.

Будут уникальные экземпляры приложения, работающие как на OT, так и на машинах TL.

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

Есть ли способ, когда TL обновляет список номеров заданий, я могу отправить «триггер» по сети в экземпляр OT, чтобы сообщить ему об обновлении?

ответ

0

Вы можете разместить службу WCF внутри приложения WPF (как described здесь, например). Эта служба будет работать на каком-то порту на вашем OT-аппарате и будет прослушивать входящие события из машины TL (которая должна знать адрес и порт OT-машины). Конечно, база данных по-прежнему необходима для обмена данными, но эту базу данных не нужно опробовать.

0

Возможно, самым простым решением было бы использовать какую-то шину сообщений, например. RabbitMQ или ZeroMQ, в шаблоне публикации/подписания. экземпляры OT подписываются на тему, а экземпляр TL будет публиковать обновления с номерами заданий на нем.

0

Я решил попробовать с помощью протокола MQTT предложить услуги паб/суб для различных приложений. Это позволит решить несколько проблем с проблемой, так как на самом деле есть несколько ведущих команд, у каждого из которых есть собственный техник-технолог.

Теперь, чтобы узнать, как реализовать MQTT с .NET.

Кто-нибудь?