解决 ASP.NET Core GET / POST 请求中未传递字段或者传递空字符串得到 null 的问题?

yufei       3 年 前       1205

使用 ASP.NET Core 做开发的时候,有些可选字段,可传也可以不传递的字段,如果未传递,或者传递空字符串 "", .NET Core 后台解析到的都是 null。显然,这有时候不是我们所需要的,我们需要的是 空字符串 ""

$.post("/api/user/1", { id: 111, userName: "" }, function () {

})

怎么办呢?有什么办法解决吗?

有的,答案就是

使用实体接收,并且在对应字段上加上特性 [DisplayFormat(ConvertEmptyStringToNull = false)]

比如下面这样

[HttpPost]
public int EditUser([FromForm] UserRequest user)
{
            return user.id;
}
public class UserRequest
{
    public int id { get; set; }

    [DisplayFormat(ConvertEmptyStringToNull = false)]
    public string userName { get; set; }
}
目前尚无回复
简单教程 = 简单教程,简单编程
简单教程 是一个关于技术和学习的地方
现在注册
已注册用户请 登入
关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.