gpt4 book ai didi

c# - 如何使用 [HttpGetAttribute] 路由,包括 AspNet.Core WebApi 应用程序中的查询字符串?

转载 作者:行者123 更新时间:2023-11-30 20:33:01 24 4
gpt4 key购买 nike

我有以下路由,适用于调用 /api/demo/info/34

[Route("api/demo")]
public class Demo : Controller
{
[HttpGet("Info/{x}")]
public JsonResult GetInfos(string x) { ... }
}

现在,我想传递一个查询字符串来选择 ID,如下所示:/api/demo/info?x=34。我应该如何重新表述该属性?

当我尝试输入 [HttpGet("Info?x={x}")] 时,错误消息显示问号在那里无效。我想通过属性方法解决它,并且从默认映射路由不是一个选项。

最佳答案

您需要做的就是将您的属性声明为:

[HttpGet("Info")]

同时将方法的签名保持为 GetInfos(string x)。在 GET 路由中,WebAPI 从签名中获取所有参数,路由中不存在的参数可以作为查询字符串参数传递,只要查询字符串中的名称与参数名称匹配即可。

关于c# - 如何使用 [HttpGetAttribute] 路由,包括 AspNet.Core WebApi 应用程序中的查询字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40753227/

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