Qu’est-ce qu’une vue fortement typée dans ASP.NET MVC?

Qu’est-ce que View fortement typé dans ASP.NET MVC?

C’est une page aspx qui dérive de System.Web.Mvc.ViewPage . On dit que cette vue est fortement typée dans le type TModel . En conséquence, il y a une propriété Model dans cette vue qui est de type TModel et vous permet d’accéder directement aux propriétés du modèle comme ceci:

 <%= Model.Name %> <%= Model.Age %> 

où, comme si votre page aspx dérivée de System.Web.Mvc.ViewPage vous deviez extraire des valeurs de ViewData la vue ne connaissait plus le type TModel :

 <%= (string)ViewData["Name"] %> <%= (int)ViewData["Age"] %> 

ou pire encore:

 <%= ((SomeModelType)ViewData["model"]).Name %> 

et il n’y a pas de sécurité de compilation dans ce code.

Notez également qu’il y a l’ ViewUserControl pour les partiels fortement typés (ASCX).

Les vues fortement typées sont utilisées pour rendre des types spécifiques d’objects de modèle, au lieu d’utiliser la structure ViewData générale. En spécifiant le type de données, vous accédez à IntelliSense pour la classe de modèle.

C’est une vue qui spécifie le type d’object qui lui a été transmis en tant que modèle. Ainsi, au lieu d’une vue héritant de ViewPage , elle hérite de ViewPageT est le type du modèle.