Must ASP.NET MVC Controller Methods Return ActionResult?
Being new to ASP.NET MVC, I've been wondering about the signature of Controller methods. In all the examples I've seen, they always seem to return ActionResult, even if they actually return a ViewResult instance or similar. Here's a commonly seen example: public ActionResult Index() { return this.View(); } In such a case, wouldn't it make more sense to declare the method as public ViewResult Index() , and get stronger type support? Experimentation indicates that this works, so it seems possible. I do realize that there may be situations where the polymorphism is desired (e.g. if you want to