Est-il nécessaire d'avoir une vue distincte pour chaque action du contrôleur?
-
04-07-2019 - |
Question
Existe-t-il une relation obligatoire entre une action de contrôleur et une vue? Je veux dire, est-il nécessaire d’avoir une vue physique (page .aspx) pour chaque action dans une classe de contrôleur?
La solution
Il n'y a pas de relation obligatoire entre l'action du contrôleur et une vue. Le contrôleur est responsable de renvoyer un ActionResult. Le moyen le plus courant consiste à utiliser une vue, mais ils ne sont pas câblés. Une vue peut par exemple être partagée entre plusieurs contrôleurs.
De plus, un contrôleur peut gérer la requête de manière autonome, en renvoyant une redirection, un résultat JSON ou même son propre code HTML (bien que cela ne soit pas recommandé).
Autres conseils
Vous pouvez également renvoyer des éléments tels que ContentResult dans une action:
public ContentResult Index()
{
return Content("Foobar!");
}
Si cela était appelé directement, cela ressemblerait à:
Response.Write("Foobar!");
Response.End();