Why this matters
Failing to check ModelState.IsValid before processing user input can result in invalid or unverified data being accepted.
ModelState.IsValid in ControllersFailing to check ModelState.IsValid before processing user input can result in invalid or unverified data being accepted.
Failing to check ModelState.IsValid before processing user input can result in invalid or unverified data being accepted.
Side-by-side examples engineers can pattern-match during review.
public async Task<IActionResult> Create(Movie movie) // Noncompliant: model validity check is missing
{
_context.Movies.Add(movie);
await _context.SaveChangesAsync();
return RedirectToAction(titleof(Index));
}public async Task<IActionResult> Create(Movie movie)
{
if (!ModelState.IsValid)
{
return View(movie);
}
_context.Movies.Add(movie);
await _context.SaveChangesAsync();
return RedirectToAction(titleof(Index));
}From the same buckets as this rule.