0

I Have the following controller method

 public IActionResult Post([FromBody,Bind("Cursuscode","Duur","Titel")] IEnumerable<Cursus> cursussen)
 {
    if (ModelState.IsValid)
    {
        ImportResult ir = new ImportResult();
        //DoMoreAwesomeStuff...
        return Json(ir);
    }
    return new BadRequestResult();
 }

My cursus class looks like this

public class Cursus
{
    [Key]
    public int Id { get; set; }        
    [Required]
    [MaxLength(10,ErrorMessage = "Code van de cursus is te lang")]
    public string Cursuscode { get; set; }
    [Required]
    public int Duur { get; set; }
    [Required]
    [MaxLength(300, ErrorMessage = "Titel van de cursus is te lang")]
    public string Titel { get; set; }
}

So in my eyes the following post should return a bad request because of the cursuscode being to long. Instead Modelstate is valid. Why?

Cursus cursus = new Cursus() { Cursuscode = "123456789012", Duur = 5, Titel = "C# AAA" };

List<Cursus> cursussen = new List<Cursus>() { cursus };

// Act
result = cursussencontroller.Post(cursussen);
// Assert
Assert.IsInstanceOfType(result,typeof(BadRequestResult));
Gert Kommer
  • 1,163
  • 2
  • 22
  • 49

0 Answers0