设置asp.net core WebApi函数请求参数可空的两种方式

  以下面定义的asp.net core WebApi函数为例,客户端发送申请时,默认三个参数均为必填项,不填会报错,如下图所示:

[HttpGet]
public string GetSpecifyValue(string param1,string param2,string param3)
{
    return $"param1:{param1},param2:{param2},param3:{param3}";
}

在这里插入图片描述

  如果需要设置param3参数可为空,可以使用以下两种方式:
  1)在参数类型后添加?,标识参数为可空,示例代码及函数运行效果如下所示,:

[HttpGet]
public string GetSpecifyValue(string param1,string param2,string? param3)
{
    return $"param1:{param1},param2:{param2},param3:{param3}";
}

在这里插入图片描述

  2)将函数输入参数封装为类,通过请求体传参方式(要把请求方式从GET该为POST),示例代码及运行效果如下所示:

 public class InputParamsDemo
 {
     public string Param1 { get; set; }
     public string Param2 { get; set; }
     public string Param3 { get; set; } = string.Empty;//设置了默认值即可不需要强制传值
 }
 [HttpPost]
  public string GetSpecifyValue([FromBody] InputParamsDemo ip)
  {
      return $"param1:{ip.Param1},param2:{ip.Param2},param3:{ip.Param3}";
  }

在这里插入图片描述

参考文献:
[1]https://blog.51cto.com/u_16213450/7475977

相关推荐

  1. 创建List方法

    2024-04-01 00:54:01       34 阅读
  2. axios请求方法

    2024-04-01 00:54:01       33 阅读
  3. Mybatis-获取参数方式

    2024-04-01 00:54:01       61 阅读
  4. springboot请求参数校验实现方案

    2024-04-01 00:54:01       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-01 00:54:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-01 00:54:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-01 00:54:01       82 阅读
  4. Python语言-面向对象

    2024-04-01 00:54:01       91 阅读

热门阅读

  1. 【c++20】CPP-20-STL-Cookbook 学习笔记

    2024-04-01 00:54:01       40 阅读
  2. Leetcode 3100. Water Bottles II

    2024-04-01 00:54:01       35 阅读
  3. 什么是数据仓库

    2024-04-01 00:54:01       41 阅读
  4. 随机规划:求解报童问题期望值模型的算法方案

    2024-04-01 00:54:01       34 阅读
  5. 云资源调度和管理系统

    2024-04-01 00:54:01       32 阅读
  6. 日本出国留学一年费用大概多少钱

    2024-04-01 00:54:01       37 阅读
  7. ###用sh ``` 用sh ``json失败

    2024-04-01 00:54:01       45 阅读
  8. git-常用命令

    2024-04-01 00:54:01       43 阅读