C# 如何创建实时应用程序和互连应用程序

C# 如何创建实时应用程序和互连应用程序,c#,android,.net,wpf,wcf,C#,Android,.net,Wpf,Wcf,我有一个WCF服务,它公开了SOAP和REST端点,我们有WPF、Android、windowsphone(未来),ASP.NET应用程序在我们的WCF服务之上,因此许多用户可以使用来自世界不同地区的许多应用程序 目前,数据的新鲜度存在一个大问题,我们正在使用一些老式的轮询技术来查找更新的数据,是否有一种方法可以创建一个系统,在服务器上从任何应用程序更新数据时,将数据推送到连接的应用程序,而不考虑平台和位置 我已经研究过双工回调,但这在android上是不可能的,并且还有一些其他限制。我也知道a

我有一个
WCF
服务,它公开了
SOAP
和REST端点,我们有
WPF
、Android、windowsphone(未来),
ASP.NET
应用程序在我们的
WCF
服务之上,因此许多用户可以使用来自世界不同地区的许多应用程序

目前,数据的新鲜度存在一个大问题,我们正在使用一些老式的轮询技术来查找更新的数据,是否有一种方法可以创建一个系统,在服务器上从任何应用程序更新数据时,将数据推送到连接的应用程序,而不考虑平台和位置


我已经研究过双工回调,但这在android上是不可能的,并且还有一些其他限制。我也知道android的
GCM
,但不知道如何使其与其他平台应用程序一起工作。

GCM只适用于android设备。Windows Phone和iOS也有类似的推送通知服务。有几种解决方案,如和,允许您将通知推送到多个设备

至于推送通知的用途。我强烈建议不要使用它们来推送数据,因为您不能总是100%确定通知是否到达设备。因此,仅使用它们来通知客户机新数据可用,然后获取它。将推送通知与轮询一起使用


现在还不完全清楚您的应用程序是做什么的,因此我不知道您何时以及多久需要一次新数据。请记住,例如iOS不允许像Android和Windows Phone那样使用永久性后台服务,但是WP one只允许每30分钟更新一次。

您需要一个持久连接,这在移动应用程序中几乎是不可能的。请考虑使用基于间隔的更新。@ Aneri感谢快速回复,请您指导我示例或给我一个示例来启动我。我的应用程序主要工作是登记人的事件,注册可以通过连接到同一WCF服务的任何设备来完成,因此,当有人出席活动时,我想通知所有其他设备,该人正在参加活动,并且在现场,可以在IIS上使用WCF中的PushSharp,如常见问题解答中所述: