【问题标题】:webapi end point is reached, but all parameters are empty到达webapi端点,但所有参数为空
【发布时间】:2021-12-19 15:56:26
【问题描述】:

我有以下终点:

    [HttpGet("/{auditReviewId}/{actioneeId?}/{entries?}")]
    public IEnumerable<AuditReviewActionDto> GetAuditReviewActions(int auditReviewId, int? actioneeId = null, int? entries = null)

我使用 HttpClient 将其称为以下方式

var client = LocalHttpClient.CreateClient("UarBase");

var response = client.GetAsync("api/AuditDashboard/GetAuditReviewActions?auditReviewId=" + logId + "&actioneeId=" + SelectedKey + "&entries=" + Limit).Result;

无论我将 LogId、SelectedKey 或 Limit 设置为什么,当我点击端点时,它们始终为空。

【问题讨论】:

    标签: c# asp.net-web-api


    【解决方案1】:

    通过使用 [HttpGet("/{auditReviewId}/{actioneeId?}/{entries?}")] 设置 HttpGet,您将输入指定为 route 参数,然后将它们作为 query 参数传递。

    如果您想通过查询传递参数,请将它们从您的路由中删除(只需使用 [HttpGet] 或仅提供基本路由),然后使用 [FromQuery] 属性标记您的每个方法输入指定它们来自查询参数。

    【讨论】:

      猜你喜欢
      • 2014-02-15
      • 2017-09-30
      • 1970-01-01
      • 2016-09-06
      • 2016-08-29
      • 2018-12-24
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      相关资源
      最近更新 更多