.NET 请求传参

参考

.NET WebAPI 基础 FromRoute、FromQuery、FromBody 用法 - 知乎 (zhihu.com)

使用

环境搭建

创建实体类 Parameter

url 传参

使用 【 & 】

请求格式: https://localhost:7290/api/Param?Method=Get&Value=Query `

以 参数 接收

大小写都可以

以 实体类 接收

在接受的实体类前添加 [FromQuery]

以 【 Rest风格 】

以 参数 接受

注意:

若传入参数与接收参数不一致,可使用[FromRoute(Name = "xxx")] 绑定

参考: .net 请求参数与调用参数不一致 - 掘金 (juejin.cn)

csharp 复制代码
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

namespace Parameter.Controllers
{
    [Route("api/[controller]")]
    [ApiController]
    public class Param : ControllerBase
    {
        [HttpGet("{Method}/{Value}")]
        public async Task<Parameter> GetRouteAsync([FromRoute(Name = "Method")] string method, [FromRoute(Name = "Value")] string value)
        {
            Parameter parameter = new Parameter
            {
                Method = method,
                Value = value
            };

            return await Task.FromResult(parameter);
        }
    }
}

以 实体类 接收

注意 :

  1. {xxx} 中的字母大小写要与实体类中属性一致
  2. 在实体类前添加[FromRoute]即可

请求体 传参

注: 若以参数接受,请求参数将会暴露在请求url上

以 实体类 接受

在接收的实体类前加[FromBody]

csharp 复制代码
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

namespace Parameter.Controllers
{
    [Route("api/[controller]")]
    [ApiController]
    public class Param : ControllerBase
    {
        [HttpPost]
        public async Task<Parameter> PostAsync([FromBody] Parameter body)
        {
            return await Task.FromResult(body);
        }
    }
}
相关推荐
想用offer打牌4 小时前
MCP (Model Context Protocol) 技术理解 - 第二篇
后端·aigc·mcp
KYGALYX5 小时前
服务异步通信
开发语言·后端·微服务·ruby
掘了5 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
爬山算法6 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
Moment6 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
Cobyte7 小时前
AI全栈实战:使用 Python+LangChain+Vue3 构建一个 LLM 聊天应用
前端·后端·aigc
程序员侠客行8 小时前
Mybatis连接池实现及池化模式
java·后端·架构·mybatis
Honmaple8 小时前
QMD (Quarto Markdown) 搭建与使用指南
后端
PP东8 小时前
Flowable学习(二)——Flowable概念学习
java·后端·学习·flowable
invicinble8 小时前
springboot的核心实现机制原理
java·spring boot·后端