Как я могу отличить запросы от RenderAction и через AJAX? - PullRequest
5 голосов
/ 11 июля 2011

В ASP.NET MVC есть полезный метод Request.IsAjaxRequest, который я могу использовать, чтобы определить, сделан ли запрос через AJAX. Однако, RenderAction метод, кажется, вызывает контроллер / действие также через AJAX.

Я бы хотел, чтобы вызовы через RenderAction возвращали View, тогда как вызовы через AJAX возвращали Json объект. Можно ли как-то отличить звонки от этих двух источников?

EDIT : Число рейнольдса Джим: Я просто называю RenderAction в View:

В SomeView.ascx:

Html.RenderAction("Action", "AnotherController", new { id = "some ID" });

1 Ответ

5 голосов
/ 11 июля 2011

Полагаю, вы могли бы использовать ControllerContext.IsChildAction, чтобы определить, был ли метод вызван RenderAction().

...