ASP.NET Web Api 和数据协定
Posted
技术标签:
【中文标题】ASP.NET Web Api 和数据协定【英文标题】:ASP.NET Web Api and Data Contracts 【发布时间】:2013-04-19 00:20:18 【问题描述】:我想为this public WEB API 创建一个客户端。我是新手,我正在经历this MSDN tutorial。我注意到没有定义数据合同,我无法在我的项目中添加服务引用。在教程中的某个地方,它说创建此类(产品)作为 HttpClient 将使用的数据对象。
使用公共 API 时如何查找/创建此类。在 WCF 中,我可以添加服务引用,并且我将获得从服务数据合同创建的客户端类。这在 Web Api 中是如何完成的?
【问题讨论】:
我不确定我是否理解这个问题:你有一个 web api 项目,它允许你访问特定 url 上的资源。Product
将是您获得的资源之一,例如在网址api/product
上。在这种情况下,只需使用教程中的HttpClient
。
【参考方案1】:
如 MSDN 文章中所述,由于没有定义的合同(与 WCF 不同),您需要先创建适当的 Types
才能使用 REST
客户端使用它。
但是,您可以使用一些快捷方式,请参见此处: Generate Contracts for REST objects
另外,您可能会发现RestSharp 比官方 WebApi 客户端更易于使用。
【讨论】:
首先感谢您的回答。其次,我应该如何创建类型?我只有响应 XML 文件,并且我尝试创建与 XML 格式匹配的类(就类名和属性名而言)。我应该从 API 主机请求这些类,还是有另一种创建这些类型的方法以上是关于ASP.NET Web Api 和数据协定的主要内容,如果未能解决你的问题,请参考以下文章