Поиск…


Синтаксис

  • // Метод ActionResult возвращает экземпляр, полученный из ActionResult. Вы можете создать метод действия, который может возвращать любой экземпляр, который завернут в соответствующий тип ActionResult.

  • // Встроенные типы возврата ActionResult:

  • Посмотреть(); // ViewResult отображает представление как веб-страницу

  • PartialView (); // PartialViewResult отображает частичное представление, которое может использоваться как часть другого представления.

  • Перенаправление (); // RedirectResult перенаправляет на другой метод действия, используя свой URL.

  • RediectToAction (); RedirectToRoute (); // RedirectToRouteResult перенаправляет на другой метод действий.

  • Содержание (); // ContentResult возвращает пользовательский тип содержимого.

  • Json (); // JsonResult возвращает сериализованный объект JSON.

  • JavaScript (); // JavaScriptResult возвращает скрипт, который может быть выполнен на стороне клиента.

  • Файл(); // FileResult возвращает двоичный вывод для записи в ответ.

  • // EmptResult представляет возвращаемое значение, которое используется, если метод действия должен возвращать нулевой результат.

Методы действий

Когда пользователь вводит URL-адрес, например: http://example-website.com/Example/HelloWorld , приложение MVC будет использовать правила маршрутизации для синтаксического анализа этого URL-адреса и извлечения подпути, которые будут определять контроллер, действие и возможные параметры. Для вышеуказанного URL-адреса результатом будет / Example / HelloWorld, который по умолчанию в результатах правил маршрутизации предоставляет имя контроллера: Exmaple и имя действия: HelloWorld.

public class ExampleController: Controller
{
    public ActionResult HelloWorld()
    {
        ViewData["ExampleData"] = "Hello world!";
        return View();
    }
}

Вышеуказанный метод ActionResult «HelloWorld» отобразит представление HelloWorld, где мы можем использовать данные из ViewData.

Сопоставление параметров Action-Method

Если в URL-адресе будет другое значение, например: / Example / ProcessInput / 2, правила маршрутизации будут угрожать последнему числу в качестве параметра, переданного в действие ProcessInput контроллера.

public ActionResult ProcessInput(int number)
{
    ViewData["OutputMessage"] = string.format("The number you entered is: {0}", number);
    return View();
}

Вызов ActionResult в другой ActionResult

Мы можем вызвать результат действия в другом результате действия.

public ActionResult Action1()
{
    ViewData["OutputMessage"] = "Hello World";
    return RedirectToAction("Action2","ControllerName");
    //this will go to second action;
}


public ActionResult Action2()
{
    return View();
    //this will go to Action2.cshtml as default;
}


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow