实现 RESTful 服务的一种非常常见的方法是利用 ASP.NET MVC 在 WCF 上执行此操作。
ASP.NET MVC 通过灵活的 URL 路由和灵活的 HTTP 方法映射到控制器操作,具有出色的 RESTful 支持。
WCF 4.0 现在对使用与 ASP.NET MVC 相同的 ASP.NET 路由机制实现 RESTful 服务具有出色的支持。
问题 使用这两种方法创建 RESTful 服务中的任何一种,您有什么经验以及遇到的优缺点?
实现 RESTful 服务的一种非常常见的方法是利用 ASP.NET MVC 在 WCF 上执行此操作。
ASP.NET MVC 通过灵活的 URL 路由和灵活的 HTTP 方法映射到控制器操作,具有出色的 RESTful 支持。
WCF 4.0 现在对使用与 ASP.NET MVC 相同的 ASP.NET 路由机制实现 RESTful 服务具有出色的支持。
问题 使用这两种方法创建 RESTful 服务中的任何一种,您有什么经验以及遇到的优缺点?
WCF 服务可以自承载。不需要 IIS。ASP.NET MVC 专注于交付 HTML,而现有的 .net 4 WCF 堆栈更多地专注于 XML 和 JSON。
新的http://wcf.codeplex.com是 WCF 上的下一代 REST,将比现有堆栈更强大。
新堆栈将更好地支持所有不同的媒体类型。它提供了对底层 HTTP 协议的更好访问。它将更具可测试性,并将更容易插入可重用的处理程序以添加标准行为。
看看 Scott Hanselminutes 和 Glenn Block 的 Podcast,他们讨论了相同的问题并比较了 MVC 和新的 WCF Web API。 http://www.hanselminutes.com/default.aspx?showID=284
我想说 WCF 更适合构建服务,你可以用 asp.net mvc 来做,但它需要更多的仪式