在C#asmx webservice中实现实时磁贴推送通知

时间:2013-03-06 15:32:26

标签: c# windows-8 microsoft-metro windows-runtime windows-store-apps

我有一个托管各种数据的asmx Web服务,现在我想从Web服务发送实时磁贴更新。我已经知道推送通知可以从云发送到WSN,但我还没有找到任何自定义Web服务的好例子。任何想法如何实现?

3 个答案:

答案 0 :(得分:2)

除了已经提供的优秀参考资料之外,我还想特别谈谈“自定义网络服务”的使用。在绿地推送通知方案中,我强烈建议您查看Windows Azure Mobile Services(WAMS),其中提取了大部分基础REST / HTTP / OAuth编排,并提供了受Windows Azure云架构支持的好处(付费)你使用什么,故障转移,数据备份等。)

鉴于您已经拥有服务,您可能会或可能不会决定WAMS的好处值得代码更改/迁移所需。如果你想继续提供你所拥有的服务,你最终会自己做一些笨拙的工作 - 使用OAuth来验证WNS等等。这不是火箭手术,但它很乏味:) Windows Azure Toolkit for Windows 8确实包括完成所有这些工作的秘诀,但现在Windows Azure Mobile服务已弃用它。

来自“scratch”的

I tackled the subject of doing the push notification flow利用ASP.NET(我使用WebAPI,但也可以使用ASMX)在Windows Azure网站(您可能会将其视为服务的主机)中。由于您需要某处存储通知的通道ID(我使用免费的MySQL实例),您需要使用OAuth与WNS通信(我使用了{{3}),因此需要进行一些辅助工作。 }),但我在helper class posted as a Gist

中涵盖了所有端到端的内容

答案 1 :(得分:1)

您的服务器基础架构(Windows与Linux)和应用程序类型(asmx与aspx)对发送通知的方式没有任何影响。通知将作为HTTP POST从服务器发送到具有特殊格式的XML数据的MPNS服务器。

以下是两个非常好的参考资料,可以帮助您入门:

推送通知概述 http://msdn.microsoft.com/en-us/library/windows/apps/hh913756.aspx

发送推送通知 http://msdn.microsoft.com/en-us/library/windows/apps/xaml/Hh868244(v=win.10).aspx

开发人员的支持,设计支持和更加出色的善意:http://bit.ly/winappsupport

答案 2 :(得分:0)