我对web开发和web服务相当陌生。我一直在使用C#在.NET中使用传统的web服务(.asmx)。有人建议现在很多服务都使用WCF,我想知道我是否应该学习WCF并使用它来与我的iOS应用程序进行通信。
由于我没有任何.NET框架的经验(在C#方面的经验很少),看起来WCF将会是一个学习曲线。我不确定是否值得在WCF上花费时间,或者我应该只使用传统的编写web服务的方式。
有什么建议吗?
发布于 2012-07-10 16:34:54
我建议避开WCF,使用Microsoft Web API或ServiceStack。两者都可以为您提供支持内容协商的简单RESTful服务--也就是说,这些服务应该易于在iPhone上使用。
Web和ServiceStack都试图用更简单、更强大的东西来取代WCF。今天,我永远不会考虑在任何greenfield代码中使用WCF。旧式.asmx (SOAP)服务是完全不可能的。
您可以让SOAP服务在iPhone上工作,但这比仅针对URL进行get或POST的工作要多得多。
请务必查看this great answer进行比较。
发布于 2012-07-10 16:34:40
我相信很多像iOS这样的应用程序的RESTful服务都是通过ASP.net MVC4的"web“来提供的。
发布于 2012-07-10 17:04:34
ServiceStack有MonoTouch和MonoDroid client release builds。
作为其核心目标之一,ServiceStack 支持并运行在单声道上。它也是唯一一个无需任何代码生成就能提供类型化的端到端客户端的.NET web服务框架,它的message-based approach是web服务的最佳选择。
要对两者进行更多的比较,这里有一个关于ServiceStack vs WebApi的现有问题。
https://stackoverflow.com/questions/11417808
复制