当您使用 ASP.Net Core 6 API 时,可能会遇到成功提交 JSON 后接收到 Null 值的问题。这通常是因为您没有正确设置反序列化选项。
为了解决这个问题,您需要手动配置 API 控制器中的 JsonOptions。以下是一个示例:
1.在 Startup.cs 文件中,将以下代码添加到 ConfigureServices() 方法中:
services.AddControllers().AddJsonOptions(options => { options.JsonSerializerOptions.PropertyNameCaseInsensitive = true; options.JsonSerializerOptions.PropertyNamingPolicy = null; });
[HttpPost] public IActionResult PostPerson([FromBody] Person person) { if (person == null) return BadRequest();
// do something with the person object
return Ok();
}
此外,您还需要确保您的 POST 请求的 JSON 格式是正确的,并且它与您的实体类匹配。在本示例中,Person 类将是这一个:
public class Person { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } }
如果您按照这些步骤操作,您应该能够成功地提交 JSON 并接收到正确的结果。