如何从Windows Phone 7.5 Mobile应用程序更新我的桌面应用程序

时间:2011-12-12 17:46:20

标签: c# winforms wcf windows-phone-7

当移动员工从他/她的Windows Phone 7手机发送任何消息时,我们的桌面应用程序需要直接更新。

目前我们的要求是从我们的桌面应用程序向Windows Phone 7.5发送消息,我们可以使用PUSH通知轻松实现,现在当用户对发送的消息采取某些操作时,Windows Phone应用程序调用WCF服务并将消息传递给接收消息的WCF并放入数据库,应用程序稍后将其读取,这就是问题所在。因为我们的WCF将该消息放入数据库,我们的应用程序每5秒轮询一次,如果从我们的任何驱动程序收到任何回复,那么它正在更新UI。

我们想要实现的是当我们收到任何回复时,我们的桌面应用程序应自动通知并更新UI,然后将其放入数据库。

请分享您在此问题上的经验。

由于

2 个答案:

答案 0 :(得分:2)

为什么不更新WCF服务以通知任何已注册的“侦听器”(即运行客户端应用程序的实例)数据库已使用新信息进行更新?

您可以通过让您的服务公开可以由想要注册某些/所有事件类型的客户端调用的服务来实现此目的。客户端应用程序托管实现回调合同的服务,服务可以在引发注册事件时调用该服务。

有一篇很好的MSDN文章单向,回调和pub-sub与WCF的消息:http://msdn.microsoft.com/en-us/magazine/cc163537.aspx

请务必跟踪并限制客户端应用每秒接收的事件数量 - 您最不希望发生的事情是100个客户端应用程序,如果同时引发50个事件,则每个应用程序都会点击服务器50次!

答案 1 :(得分:0)

理查德的解决方案可能更合适,因为它描述了使用精心打包的WCF API,它将为您做很多事情。另一种方法是自己实施长轮询。然后,您还可以在需要立即更新时更新Windows Phone客户端。我前段时间写了article,如果你在Windows Phone上进行谷歌长时间轮询,你可以找到它。