Phil Haack explains this well in this blog post . Basically a child action is a controller action that you could invoke from a view using the Html.Action :
@Html.Action("SomeActionName", "SomeController")
This action will then execute and display its output at the specified location in the view. The difference with Partial is that partial only includes the specified markup, there is no other action that performs the main action.
So you have the main action that received the request and displayed the view, but from this view you can perform several child actions that will go through their independent MVC life cycle and ultimately output the result. And all this will happen in the context of a single HTTP request.
Child actions are useful for creating entire reusable widgets that can be embedded in your views and that go through their independent MVC life cycle.
Darin Dimitrov Sep 21 '12 at 11:52 2012-09-21 11:52
source share