如何从客户端的Web服务中自动提取数据

时间:2015-07-02 14:11:56

标签: asp.net-mvc web-services wcf architecture signalr

我正在努力寻找在工作中构建应用程序的最佳解决方案。 1)我的客户端有一个Web服务,我需要有一个自动进程从客户端Web服务中提取数据,存储在数据库中。数据将显示在aspnet MVC Web应用程序中。一旦有新数据进入,我想通知当前用户(类似徽章) 问题1:我对从客户端Web服务中提取数据的过程有两个想法,            A)我创建一个WCF服务,并将其作为Windows服务托管            B)创建控制台应用程序并获取计划任务以运行控制台应用程序

问题2:我正在考虑使用SignalR来指示新数据的用户,但在后端如何让SignalR检查数据变化?

非常感谢你们

此致

1 个答案:

答案 0 :(得分:0)

  

问题1:我有两个关于从中提取数据的过程的想法   客户端的Web服务,A)我创建一个WCF服务,并将其托管为   Windows服务B)创建控制台应用程序并获取计划   运行控制台应用程序的任务

您的意思是WCF客户端吗?要从客户端的Web服务中提取数据,您需要一个WCF客户端而不是服务吗?其余的在这里看起来不错。

  

问题2:我正在考虑使用SignalR来表示新用户   数据,但在后端如何让SignalR检查数据变化?

SignalR只是向客户发送通知的一种手段。检查更新的方式取决于通知的性质。因此,您最好详细说明这一部分,以获得更好的建议。一种常见的方法是使用通知日志表/队列,您可以检查更新,处理它们并发送给客户端。不要忘记删除或标记表格中已处理的通知。

或者,您可以在具有WCF客户端和计时器的Windows服务中托管SignalR,以从Web服务中提取数据。您可以直接从Windows服务通知您的Web用户。请参阅此文Tutorial: SignalR Self-Host

希望有所帮助!