I'm creating an application to schedule vehicles. it will be created with sql server 2005 and c# using winForms.
so basically it's a simple thing. client talks to server etc.
but: I need almost live updates. If User1 modifies a record all other users should be notified as soon as possible about the change.
Secondly our application (or server) talks with an external server through an interface. the external server forwards our communication to the vehicles and they send messages back to the external server. so, those returned messages need to go to the clients (like above, as soon as possible).
so far so good.
My idea was to have our server talk to the external server and distributes incoming messages to the client (and vice versa) via wcf.
now the other thing would be distributing client updates to all the other clients.
Here I'm not sure whats the way to go.
I thought about database triggers, which call a c# app that notifies the clients about the updates (wcf).
Should the clients make direct call to the database (with dataset etc., quite normal) or should I send all calls to a service located on the server which handles it (seems a bit complicated to me, since I have never done a client/server app like described above).
What do you think?
Am I on the right track, or do you have some other/better ideas?