Rules to Better MVC
- Do You Help Users By Selecting A Default Field
- Do you understand the Enterprise MVC request process?
- Do you use TryUpdateModel instead of UpdateModel?
- Do you use Model Binding instead of FormCollection?
- Do you force SSL on sensitive methods like “Login” or “Register”?
- Do you use viewModel instead of ViewData?
- Do you use RedirectToAction instead of returning a view that’s not named the same as the action?
- Do you use startup tasks in the ~/App_Start folder instead of putting code in Global.asax?
- Do you use AuthorizeAttribute to secure actions or controllers?
- Do you use Html Helpers and Partial Views to simplify Views?
- Do you avoid hardcoding URLs (“../”, “~/”, or “/”) and use Url.Action or Html.ActionLink instead?
- Do you use Bundling to package script and css files?
- Do you use Anti Forgery Tokens on any page that takes a POST?
- Do you use the URL as a navigation aid (aka redirect if URL is incorrect)?
- Do you use Thin Controllers, Fat Models, and Dumb Views?
- Do you use NuGet?
- Do you regularly update your dependencies in NuGet?
- Do you use Glimpse?
- Do you inject your dependencies?
- Do you use a dependency injection centric architecture?
- Do you know the layers of the onion architecture?
- Do you use jQuery with the Web API to build responsive UI?
- Do you use CSS frameworks?
- Do you bundle and minify your JavaScript?
- Do you know the best sample applications?
- Do you know the best way to do printable reports?
- Do you protect your MVC website from automated attack?
- Do you update your NuGet packages?
- Do you use MVC Unobtrusive Validation?