如何使用Visual Studio代码调试C#代码

本文关键字:代码 调试 Studio 何使用 Visual | 更新日期: 2023-09-27 18:28:09

我是VS代码环境的新手。我正在VS代码中开发一个Web API,稍后将从客户端应用程序中使用。下面的代码块似乎没有执行,所以我想检查它是否正在执行!

//GET: pwapi/plants/10076/features
[HttpGet("{id}, {sectionArray}")]
public async Task<string> Get(int id, string sectionArray){
  var url="https://www.domain.com/search?apikey=<apikey>&sections="+sectionArray+"&plantid="+id;
			
  using(var client = new HttpClient()){
    client.BaseAddress=new Uri(url);
    client.DefaultRequestHeaders.Accept.Clear();
    var response=await client.GetAsync(url);
				
    //will throw an exception if not successful
    response.EnsureSuccessStatusCode();
				
    string content = await response.Content.ReadAsStringAsync();
				
    //return await Task.Run(() => JsonObject.Parse(content));
    return content;
  }
}

上述方法的URL为http://localhost:5000/pwapi/plants/10076/features

我有一个过载的方法,它运行良好:

[HttpGet("{id}")]
public async Task<string> Get(int id){
  var url="https://www.domain.com/list?apikey=<apikey>";
  using(var client = new HttpClient()){
    client.BaseAddress=new Uri(url);
    client.DefaultRequestHeaders.Accept.Clear();
    var response=await client.GetAsync(url);
				
    //will throw an exception if not successful
    response.EnsureSuccessStatusCode();
				
    string content = await response.Content.ReadAsStringAsync();
				
    //return await Task.Run(() => JsonObject.Parse(content));
    return content;
  }
}

上述方法的URL为http://localhost:5000/pwapi/plants/10076

三个问题:1.如何调试代码?2.如果调试不可能(到目前为止,我已经看到调试只适用于客户端脚本,我可能错了),那么有什么替代方法可以知道我做错了什么?3.如果没有其他选择,请告诉我为什么该方法没有命中。

如何使用Visual Studio代码调试C#代码

如果您注意到Get重载的路由前缀,则会使用逗号而不是斜杠,这会使路由无效,因此您的端点永远不会被命中。请将路线前缀更改为:

[HttpGet("{id}/{sectionArray}")]

至于调试端点,您只需要通过按行上的F9或单击要调试的代码行的左侧来放置一个断点。