با سلام
من میخواهم برای یک شرکت که حدود 500سیستم دارد یک برنامه ویندوزی پیام رسان بنویسم، که هم امکان ارسال پیام و انواع فایل داشته باشد که بلافاصله گیرندگان ، پیام را دریافت کنند(به جای تابلو اعلانات) هم قابلیت چت داشته باشد. بعدهها نسخه موبایل هم برایش تهیه کنیم
دیتابیس هم sql server هست
شما چه روشی برای پیاده سازیش پیشنهاد میدید؟
خودم به این نتیجه رسیدم که
الف) یک وب سرویس داشته باشم شامل متدهایی برای ارسال و دریافت پیام/ مشاهده کاربران / مشاهده گروهها که برنامه کلاینتم اصلا مستقیم به دیتابیس وصل نشوند و نخواهند مستقیما پروسیجر اجرا کنند
ب) یک ویندوز سرویس روی سرور داشته باشم که به دیتابیس وصل باشد و تغییرات یا پیامهای جدید را از طریق sql dependency مطلع بشود و از طریق signalR به کلاینت مربوطه، اطلاع دهد
ج) برنامه های کلاینت با wpf که از طریق وب سرویس به دیتابیس وصل هستند و با signalR سرور متوجه میشوند پیغام جدید دارند یا نه


اصلا این روشی که میخواهم استفاده کنم درسته؟ بار روی سرور زیاد نمیشه؟ بهتر از این هست که خود کلاینتها از طریق store procedure به بانک وصل بشن؟ روش سوکت پروگرامینگ چطوریه به نظرتون؟

ممنون میشم راهنماییم کنید