代码之家  ›  专栏  ›  技术社区  ›  Thom Kiesewetter

使用新的JsonSerializer升级到net core 3.0后,“FromBody”失败

  •  0
  • Thom Kiesewetter  · 技术社区  · 6 年前

    使用新的json序列化程序升级到netcore3.0后,[FromBody]标记的对象为空;

    控制器api

    [HttpPost("")]
    [AllowAnonymous]
    public async Task<JwtToken> Login([FromBody] UserCredentials userCredentials)
    {
       ...
    }
    

    public class Startup
    {
       services.AddControllers();
       ...
    }
    public void Configure()
    {
       app.UseEndpoints(endpoints => { endpoints.MapControllers().RequireAuthorization(); });
       ...
    } 
    
    public class UserCredentials
        {
            public string Password;
            public string Username;
        }
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Thom Kiesewetter    6 年前

    通过Json.net序列化程序,它可以使用字段。在netcore3.0的内置版本中,字段必须更改为properties。

    public class UserCredentials
        {
            public string Password { get; set; }
            public string Username { get; set; }
        }
    
    推荐文章