.net6 .net core web api json 遇到 400 错误

561 阅读1分钟

环境: .net6 webapi

服务端模型声明

public class TongYiMinPgPayReq
    {

        public string mch_no { get; set; }

        public string out_trade_no { get; set; }

    }

客户端请求报文 :

{"mch_no":"307989972980027","out_trade_no":null}

向服务器请求时,就收到了:远程服务器返回错误: (400) 错误的请求。 (400 ,bad request)

解决方法: null字段声明时加上?号。

public class TongYiMinPgPayReq
    {

        public string mch_no { get; set; }

        public string? out_trade_no { get; set; }

    }

这时候请求,服务端就能正常收到报文。

原因:可能是.NET6中强制开启了“引用类型和值类型在是否可空的性质上终于达成了一致” 这个特性。 参考: blog.csdn.net/Surbowl/art…