I have a partial view which can either be requested via an Action (Action2 in the image below), or rendered inside another page with “Html.Action()” (Action1 in the image below). From within the partial (or the partials controller) is there a way to determine which of these two methods were used to render the page?

You can use ControllerContext.IsChildAction or check
DataTokenswhether there is something with key"ParentActionViewContext"if you don’t have access toControllerContext.