Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 执行REST请求的说明_.net_Rest_Console - Fatal编程技术网

.net 执行REST请求的说明

.net 执行REST请求的说明,.net,rest,console,.net,Rest,Console,我很难准确地理解我遇到的这段代码在控制台应用程序中的作用。我对控制台应用程序和REST都是新手,在网上很难找到答案。有人能给我解释一下这个代码的作用吗,也许每行 public T Execute<T>(RestRequest request) where T : new() { var client = new RestClient(); client.BaseUrl = BaseUrl; var response = client.Execu

我很难准确地理解我遇到的这段代码在控制台应用程序中的作用。我对控制台应用程序和REST都是新手,在网上很难找到答案。有人能给我解释一下这个代码的作用吗,也许每行

 public T Execute<T>(RestRequest request) where T : new()  
 {  
    var client = new RestClient();  
    client.BaseUrl = BaseUrl;
    var response = client.Execute<T>(request);

    if(response.ErrorException != null)  
    {      
        const string message = "Error occurred.";
        var pardotException = new ApplicationException(message, response.ErrorException);
        throw pardotException;
     }
     return response.Data;
 }
publictexecute(RestRequest请求),其中T:new()
{  
var client=new RestClient();
client.BaseUrl=BaseUrl;
var response=client.Execute(请求);
if(response.ErrorException!=null)
{      
const string message=“发生错误。”;
var pardotException=新的ApplicationException(消息,response.ErrorException);
抛出异常;
}
返回响应数据;
}
根据我的基本知识,这似乎是控制台应用程序中REST请求的方法定义。我看到了基本的错误处理和向何处发送请求的定义,但我没有理解这段代码的总体目的

编辑:是否有任何明显的方法进一步优化此代码?我现在理解了该方法的用途,但是否可以做得更好?

这是一个使用库的代码:

//接受RestRequest并返回泛型类型T的对象的方法
//(摘自回复,我们可以在此假设)
public T Execute(RestRequest请求),其中T:new()
{
//创建能够调用REST服务的客户端
var client=new RestClient();
//提供REST服务的地址
client.BaseUrl=BaseUrl;
//调用服务,指定其响应将反序列化为T
var response=client.Execute(请求);
if(response.ErrorException!=null)
{      
const string message=“发生错误。”;
var pardotException=新的ApplicationException(消息,response.ErrorException);
抛出异常;
}
//获取反序列化的响应对象
返回响应数据;
}
// Method that takes RestRequest and returns an object of generic type T
// (taken from response, we can assume here)
public T Execute<T>(RestRequest request) where T : new()  
{
    // Create client that will be able to call REST service
    var client = new RestClient();  
    // Provide the address of REST service
    client.BaseUrl = BaseUrl;
    // Call service, specifing that its response will be deserialized to T
    var response = client.Execute<T>(request);

    if(response.ErrorException != null)  
    {      
        const string message = "Error occurred.";
        var pardotException = new ApplicationException(message, response.ErrorException);
        throw pardotException;
     }
     // get the deserialized response object
     return response.Data;
 }