我有一个SQL Server 2008 R2,我想从服务器向我的c#应用程序发送一个字符串。反之亦然。我不希望我的C#应用程序去询问我的数据库中是否有新数据,我希望SQL Server将数据(字符串)发送到我的C#应用程序。
是否可以将SQL Server作为发件人,将C#应用程序作为接收者?
答案 0 :(得分:1)
我们应该看看SqlDependancy
。以下是如何在Windows应用中使用它的说明:http://msdn.microsoft.com/en-us/library/a52dhwx7%28v=vs.80%29.aspx
答案 1 :(得分:0)
IIRC SqlDependency实际上是通过轮询数据库来工作的,所以你实际上只是将“去问”的工作卸载到另一层。如果您真的只想从数据库服务器向应用程序发送消息,则可以在应用程序中打开端口(或公开Web服务),然后从SQL Server中使用xp_cmdshell来调用使用该端口/服务的命令行应用程序发送消息。可能还有其他方法,这可能必须在防火墙后面或采取适当的安全措施。