(Assuming it's even possible in .Net, of course.)
Ultimately, what I want to accomplish is an AJAX-based messaging system. I already have a database table for messages, and an ASPX to add new messages (and declare old messages no longer relevant).
The current messaging system simply polls the server every 15 seconds, and re-pulls the current message set.
What I am looking to do is: On $(document).ready(), register an ajax callback function that listens for a server-side event (e.g., MessagesUpdated) On table insert/update, fire MessagesUpdated server-side.
This way, whenever the table is updated (or new records added), any clients listening know that new data is available and can re-poll the server then.
Ideally, I'd also like to make the new data available as an event argument (to minimize re-polling the db).
I can find references to something like this in other languages, but I cannot find any actual code examples to get me started.
Assuming this is possible to do via .Net, can anyone help get me started on this?
I'm using the 2.0 Framework. Also while I added a VB.Net tag, I can read C# reasonably well, so please feel free to post in either language.
Thanks in advance!
Take a look into long polling. Basically what it does is set a long timeout period on AJAX requests. The client then waits for the server to respond. This is much more efficient and instantaneous than sending requests every few seconds.