我要实现的是具有不同的客户端(Silverlight的,WPF)一个REST的WebService。 问题的关键是使用的HTTP优势。 我必须推出更新TP我的客户(我不知道,究竟是什么,最好的选择)。 大多数教程是关于使用REST和彗星对茶亭应用,这是不适合我的情况。 我无法找到我的塞纳里奥任何样品
1)轮询一个好的做法呢? 最终我会面临一些问题? 哪一个?
2)我想介绍一个web客户端(Silverlight和WPF也)很快,但我不知道我们如何在AJAX轮询(从未使用AJAX),我想知道是否有可能做到这一点。
3)我想要的服务是因为互操作性的REST。 我希望它与WPF,Silverlight中,JAVA,使用Javascript(AJAX)和移动设备。 所以,如果我要介绍的推送通知(如果它甚至有可能与REST),它将如何与WPF / Silverlight中,AJAX工作。
如果你有代码示例,我们将不胜感激。
提前致谢!
1)不好。 但随着HTTP打交道时没有的WebSockets你别无选择轮询或长轮询。 如果是possbile使用WebSockets和/或SingnalR,那么你就避免了投票,并提高性能。
2)jQuery.ajax
http://api.jquery.com/jQuery.ajax/
3)看SignalR和SingnalR样品
http://signalr.net/
https://github.com/SignalR/SignalR
http://www.asp.net/signalr
还有一个提示。 从我的经验,它几乎总是能够重新设计的客户端或者UI界面,避免投票的。 确保有除投票没有别的办法。 而当你不与遗留应用程序,然后使用SignalR的WebSockets工作就是用自己的方式
UPD:当微软堆栈回答说不是遗留应用程序或维护的话,肯定对REST服务将ASP.NET的Web API使用或不SignalR REST服务。 SignalR是图书馆,这将有助于你与你的推送通知,即使客户端不支持WebSockets的。 它的工作原理适应性,如果客户端不支持WebSockets的,它会尝试使用其他技术,包括轮询和长轮询。
NuGet包也inlcudes Silverlight的LIB
http://nuget.org/packages/Microsoft.AspNet.SignalR.Client/
看看SignalR控制台样本。 这将是不使用SignalR库从任何.NET客户端的问题https://github.com/SignalR/Samples/tree/master/BasicChatConsole
关于如何使用的ASP.NET Web API使REST服务示例和教程在这里
http://www.asp.net/web-api