105

我一直在尝试创建一个使用 RestSharp 调用 Rest API 的简单原型 Web 应用程序。

我一直找不到一个很好的例子。有人可以分享并指导我找到正确的资源吗?我已经看过以下内容,但没有提供我正在寻找的内容,即功能齐全的示例:

http://restsharp.org/(没有完整的示例应用程序)

http://www.stum.de/2009/12/22/using-restsharp-to-consume-restful-web-services/(好像老了)

在进行原型设计时,我收到以下代码错误:

RestResponse response = client.Execute(request);

*Cannot implicitly convert type 'IRestResponse' to 'RestResponse'. An explicit conversion exists (are you missing a cast?)  *
4

3 回答 3

155

Pawel Sawicz .NET 博客有很好的解释和示例代码,解释了如何调用库;

得到:

var client = new RestClient("192.168.0.1");
var request = new RestRequest("api/item/", Method.GET);
var queryResult = client.Execute<List<Items>>(request).Data;

邮政:

var client = new RestClient("http://192.168.0.1");
var request = new RestRequest("api/item/", Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddBody(new Item
{
   ItemName = someName,
   Price = 19.99
});
client.Execute(request);

删除:

var item = new Item(){//body};
var client = new RestClient("http://192.168.0.1");
var request = new RestRequest("api/item/{id}", Method.DELETE);
request.AddParameter("id", idItem);
 
client.Execute(request)

RestSharp GitHub 页面在页面中间有一个非常详尽的示例。要开始在您的项目中安装 RestSharp NuGet 包,然后在您的代码中包含必要的命名空间引用,那么上面的代码应该可以工作(可能不需要完整的示例应用程序)。

NuGet RestSharp

于 2013-06-18T14:58:00.237 回答
27

改变

RestResponse response = client.Execute(request);

IRestResponse response = client.Execute(request);

为我工作。

于 2013-03-27T08:51:36.760 回答
25

我设法找到了一篇关于这个主题的博客文章,它链接到一个实现 RestSharp 的开源项目。希望对您有所帮助。

http://dkdevelopment.net/2010/05/18/dropbox-api-and-restsharp-for-ac-developer/ 博文是2部分,项目在这里: https ://github.com/ dkarzon/DropNet

如果你有一个完整的例子来说明什么不起作用,它可能会有所帮助。如果您不提供代码,则很难获得有关如何设置客户端的上下文。

于 2012-04-19T10:31:49.640 回答