如果ASP.NET Core选择验证与数据注释不起作用,可能是由于以下几种原因:
services.AddControllers()
.AddNewtonsoftJson(options =>
{
options.SerializerSettings.ContractResolver = new DefaultContractResolver();
})
.AddFluentValidation();
public class MyModel
{
[Required(ErrorMessage = "Name is required")]
public string Name { get; set; }
[Range(0, 100, ErrorMessage = "Age must be between 0 and 100")]
public int Age { get; set; }
}
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
[HttpPost]
public IActionResult Create([FromBody] MyModel model)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
// 处理创建逻辑
return Ok();
}
通过检查以上步骤,您可以解决ASP.NET Core选择验证与数据注释不起作用的问题。