Which ASP.NET MVC validation strategy should we use?