首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每当在数据库中插入新行时,我希望在c#中执行代码

每当在数据库中插入新行时,我希望在c#中执行代码
EN

Stack Overflow用户
提问于 2011-08-05 16:42:43
回答 2查看 335关注 0票数 2

我正在开发一个聊天应用程序,其中来自一个客户端的聊天消息进入数据库,其他客户端每5秒轮询一次(使用计时器)是否有任何新消息,如果有,则获取并显示消息。但当一个用户使用较慢的and连接,而另一个用户使用非常快的连接时,这就会产生问题。我想开发一种机制,只在数据库中插入新行时才执行方法,这样就不需要轮询了。只有当新的聊天消息由任何客户端进入数据库时,用户才会获取msgs,否则全部保持空闲。任何帮助都将不胜感激。我使用的是asp.net和C#。

EN

回答 2

Stack Overflow用户

发布于 2011-08-05 16:53:43

您所描述的是从轮询模型转向发布/订阅模型(正如您所理解的,这是一种比轮询更好的聊天/提要方式)。两个可能的资源是本文Publish/Subscribe design pattern implementation in C#和前面关于Pub/Sub architecture的堆栈溢出问题。

票数 2
EN

Stack Overflow用户

发布于 2011-08-05 16:59:37

我不会评论实现应用程序的不同方法,而是专注于回答您提出的问题--您可以使用Query Notifications来完成此任务。您可以使用这些方法做很多事情,但基本前提是,一旦设置好这些方法,您就可以向SQL server提供一个您感兴趣的查询,当结果发生变化时,SQL server将通知您的应用程序。

有一个合理的教程(代码是用VB.NET编写的,但实际上并没有太多变化) here

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6953612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档