**Which** controller?

My understanding is as follows: the routing engine receives a request and resolves the URL to an action on a controller. The controller then does its processing and returns an appropriate `ActionResult`. If that `ActionResult` is a `ViewResult`, the Layout must include a call to `RenderBody()` to "insert" the view in the `ViewResult` at the appropriate point in the page. It doesn't make sense for an action to be called by the Layout, because it might not return a ViewResult: what happens if your action returns a `JsonResult`, for example? It makes no sense to render that on a page.