阅读this post后,我决定编写自己的聊天应用程序。
与上述帖子不同,我的应用程序允许更多轮询,例如当用户按任意键时(为了通知另一个用户1正在写东西),显然当用户发送消息时。
这会导致一些问题:通常无法正确读取任何通知,并且不会始终从另一方读取已发送的消息。
如果有某种方式发送和接收不同的通知类型(消息,关于新写作的警报,新用户加入等等),这可能会很棒。
我该如何解决这个问题?
答案 0 :(得分:0)
Signal R是您问题的解决方案。我知道你想开发自己的解决方案并且阴谋可能很诱人但请考虑调查SignalR - 能够掌握和操纵SignalR将支付股息并让你更容易解决类似的问题 - 它添加到您的开发工具库的好工具。
事实上,无论如何都要继续开发你的解决方案,但一旦为了其他东西或其他项目提供SignalR,它确实值得看作是在.net内实现这种类型的客户端服务器通信的事实上的方法。它可以在NuGet上找到,使用下面的链接,只需点击几下即可!
答案 1 :(得分:0)
我很高兴通知您,我的聊天应用现在正在运行。
问题是关于在同一个javascript事件处理程序中调用wcf服务两次(发送消息按钮,我在那里通知了新消息和警告,例如“用户没有写任何东西”,是的,我需要重置之前的警报(“用户正在写信息......”)。
现在我可以发送和接收许多通知,所有工作都很好。我已经用10个聊天页面对它进行了测试。
当然,我知道通过使用您建议的框架可以实现更多的功能和稳定性,但我很高兴为我的目的找到了一个相对简单,可定制和良好的解决方案。