Asp.net 从Web API向.NET客户端发送异步回调的最佳选择

Asp.net 从Web API向.NET客户端发送异步回调的最佳选择,asp.net,asp.net-web-api,signalr,Asp.net,Asp.net Web Api,Signalr,我的项目中有以下场景:- 客户端使用ASP.NET Web API发出HTTP服务请求。WebAPI位于两个WCF服务之上,这些服务依次处理所有业务逻辑。客户端使用Web API订阅特定类型的事件。每当Web API收到来自内部WCF服务的关于事件发生的通知时,Web API反过来需要将事件及其详细信息通知(将事件推送到)所有订阅的客户端 我想了解可供选择的不同选项 将ASP.NET Web API的异步回调发送到 客户。(目前我们正在开发一个原型 客户端是一个C#Windows窗体应用程序。稍

我的项目中有以下场景:-

客户端使用ASP.NET Web API发出HTTP服务请求。WebAPI位于两个WCF服务之上,这些服务依次处理所有业务逻辑。客户端使用Web API订阅特定类型的事件。每当Web API收到来自内部WCF服务的关于事件发生的通知时,Web API反过来需要将事件及其详细信息通知(将事件推送到)所有订阅的客户端

  • 我想了解可供选择的不同选项 将ASP.NET Web API的异步回调发送到 客户。(目前我们正在开发一个原型 客户端是一个C#Windows窗体应用程序。稍后我们可能会选择 ASP.NET MVC4 web应用程序。)

  • 我还想知道哪个选项最适合发送异步 当伴随通知的数据较大时,将通知返回到客户端。在我们的场景中,从服务发回的通知数据可能会很大(大约在5KB到50MB的范围内)

  • 在我上面描述的场景中,SignalR可以用于在Web API接收到来自内部WCF服务的回调时从Web API通知c#client吗

    注意:-Web API当前托管在Windows服务中,客户端是.NET Windows窗体应用程序

    任何指向此类代码示例的指针或关于如何实现这一点的说明都将非常有用


    Cheers

    信号器非常适合您描述的场景,因此我建议将其用于通知(特别是因为您希望从WinForms应用程序开始,然后切换到浏览器客户端-使用信号器,您将能够连接到相同的服务器端代码)


    但是,我还建议保持通知消息的轻量级,因此,我不会将数据发送给客户端,而是发送一个令牌,客户端可以使用该令牌从WebAPI检索数据(对于大型文件传输来说,Signal并不理想).

    是否有Web API和Signal一起使用的代码示例?请查看此问题中的链接:(基本上,只要知道要调用的客户机的连接id,就可以从任何类调用客户机,并且客户机可以以通常的方式访问WebAPI操作,例如通过ajax调用)从文档中看一看也可能有助于澄清问题,你找到一些例子了吗