ASP.NET MVC: Что такое Метод действия? Результат действия? Как они связаны?

Я сожалею, что задал такой основной вопрос, но это довольно фундаментально для меня. Для лучше понимания фильтров я должен понять это понятия. Хотя я нахожусь на ASP.NET MVC в течение нескольких месяцев теперь и теперь делаю хорошие демонстрации, я более знаком с понятием Метода действия, чем результат действия.

Что:

  1. Метод действия?
  2. Результат действия?
  3. Как они связаны?

Скажем, у меня есть это

public ViewResult ShowPerson(int id)
{
  var friend = db.Persons.Where(p => P.PersonID == id).First(); 
  return View(friend);
}

Как те понятия относятся к вышеупомянутому коду?

Спасибо за помощь.

6
задан Richard77 17 July 2010 в 11:07
поделиться

1 ответ

В вашем примере ShowPerson - это действие. Каждое действие должно возвращать результат действия (в вашем случае он возвращает представление). Поэтому, когда вызывается метод действия контроллера, он выполняет некоторую обработку и решает, какое представление лучше всего адаптировать для представления модели.

Есть много разных результатов действий, которые вы можете использовать. Все они являются производными от ActionResult :

  • ViewResult - если вы хотите вернуть View
  • FileResult - если вы хотите загрузить файл
  • JsonResult - если вы хотите сериализовать какую-то модель в JSON
  • ContentResult - если вы хотите вернуть простой текст
  • RedirectResult - если вы хотите перенаправить на какое-то другое действие
  • HttpUnauthorizedResult - если вы хотите указать, что пользователь не авторизован для доступа к этому действию
  • FooBarResult - результат настраиваемого действия, который вы написали
11
ответ дан 9 December 2019 в 20:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: