在ASP.NET Web API中处理ModelState验证

我想知道如何使用ASP.NET Web API进行模型验证。我有这样的模型:


public class Enquiry

{

    [Key]

    public int EnquiryId { get; set; }

    [Required]

    public DateTime EnquiryDate { get; set; }

    [Required]

    public string CustomerAccountNumber { get; set; }

    [Required]

    public string ContactName { get; set; }

}

然后,我在API控制器中执行了Post操作:


public void Post(Enquiry enquiry)

{

    enquiry.EnquiryDate = DateTime.Now;

    context.DaybookEnquiries.Add(enquiry);

    context.SaveChanges();

}

如何添加if(ModelState.IsValid)然后处理错误消息以传递给用户?


摇曳的蔷薇
浏览 783回答 3
3回答

蝴蝶不菲

也许不是您想要的东西,但也许对某些人来说很不错:如果您使用的是.net Web Api 2,则可以执行以下操作:if (!ModelState.IsValid)     return BadRequest(ModelState);根据模型错误,您将获得以下结果:{   Message: "The request is invalid."   ModelState: {       model.PropertyA: [            "The PropertyA field is required."       ],       model.PropertyB: [             "The PropertyB field is required."       ]   }}
打开App,查看更多内容
随时随地看视频慕课网APP