gpt4 book ai didi

c# - 查询字符串和属性路由一起用于 Controller .NET 核心 Web API

转载 作者:太空宇宙 更新时间:2023-11-03 22:40:33 25 4
gpt4 key购买 nike

我正在努力实现这样的目标

namespace CoreAPI.Controllers
{
[Route("api/[controller]")]
public class ValuesController : Controller
{
// GET api/values

// GET api/values/5
[HttpGet("{id}")]
public string Get(int id)
{
return "value";
}

[HttpGet]
public string GetValue(string name,string surname)
{
return "Hello " + name;
}
}
}

我想通过使用这两个 URL 来调用这个 Controller 方法:

  1. http://localhost:11979/api/values/Getvalues/John/lawrance
  2. http://localhost:11979/api/values/GetValues?name=john&surname=lawrance

最佳答案

你可以通过在 Controller 方法之上定义多个路由来解决这个问题

[HttpGet("GetValues")]
[HttpGet("GetValues/{name}/{surname}")]
public string GetValue(string name, string surname)
{
return "Hi" + name;
}

这将适用于 http://localhost:11979/api/values/GetValues/John/lawrancehttp://localhost:11979/api/values/GetValues?name =john&surname=lawrance

添加更多:

[HttpGet]
[Route("GetValues")]
[Route("GetValues/{name}/{surname}")]
public string GetValue(string name,string surname)
{
return "Hello " + name + " " + surname;
}

这也行。

关于c# - 查询字符串和属性路由一起用于 Controller .NET 核心 Web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52424544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com