You could write a C# assembly with public event that is loaded into SQL Server so it could be called from T-SQL. Then write another C# assembly that is exposed in Silverlight, or COM callable as a OLE component in the web page. The assembly would need to act as a sink for the server side event using remoting or other call back technology. Either way it would be horrid. It would be much easier for client side web code to make an async call to a service to check if the desire event has occured in the database.