Здравствуйте.
Пишу клиент-серверную программу для работы с приборами.
Сервер:
— управляет работой приборов
— собирает данные
— работает с базой данных
— предоставляет командный интерфейс для управления действиями клиенту
Клиент:
— получает от сервера данные
— отображает данные (графики, таблицы)
— управляет работой через командный интерфейс
Хотел реализовать клиент на WPF состоящий из 3 модулей: tcpclient — clientcore — wpf. Каждый модуль работает в своем потоке. Не понимаю, как увязать ядро клиента, где по моим предположениям хранились бы все данные (модели) с окнами. Гугля читал про mvvm, думал — может быть, ядро будет строить из моделей вьюмодели и выдавать их в окна, но тогда это получается потеря всех прелестей биндингов — придется делать конвертация из моделей в вьюмодели и работать по запросам. Хотелось бы сделать какие-то биндинги и связать данные из ядра в одном потоке с окнами wpf в другом потоке.
Хотел бы получить помощь и подсказки по архитектуре, как реализовать связывание. Возможно, все мои мысли выше бред, и вы подскажете, так как надо делать "правильно".