Quelqu'un peut-il m'expliquer quelle est l'utilité de l'attribut UIHint dans MVC. Pourquoi en avons-nous besoin, quand et comment l'utiliser ? Merci
Cela ne devrait-il pas être @Html.DisplayFor(m => m.Name)
à la fin ?
Quelqu'un peut-il m'expliquer quelle est l'utilité de l'attribut UIHint dans MVC. Pourquoi en avons-nous besoin, quand et comment l'utiliser ? Merci
UIHintAttribute Spécifie le modèle ou le contrôle utilisateur que Dynamic Data utilise pour afficher un champ de données.
Voici la description MSDN de UIHintAttribute. Il a d'abord été introduit pour les applications Dynamic Data et ASP.NET MVC l'a également adapté.
Si vous annotez une propriété avec l'attribut UIHint et que vous utilisez la fonction EditorFor
o DisplayFor
à l'intérieur de vos vues, le cadre ASP.NET MVC recherchera le modèle spécifié par l'intermédiaire de la fonction UIHintAttribute
. Les répertoires qu'il recherche sont :
Pour EditorFor
:
~/Views/Shared/EditorTemplates
~/Views/Controller_Name/EditorTemplates
Pour DisplayFor
:
~/Views/Shared/DisplayTemplates
~/Views/Controller_Name/DisplayTemplates
Si vous êtes sur une zone, cela s'applique également à votre zone comme ci-dessus.
Voici l'exemple d'utilisation :
public class Person {
[UIHint("Poo")]
public string Name { get; set; }
}
Le cadre MVC cherchera une vue partielle nommée poo
sous les répertoires spécifiés si vous essayez de sortir la propriété du modèle avec EditorFor
o DisplayFor
comme ci-dessous :
@model MyApp.Models.Person
<h2>My Person</h2>
@Html.DisplayFor(m => m.Name)
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
4 votes
Qu'avez-vous lu à ce sujet jusqu'à présent qui était déroutant ? Qu'avez-vous essayé ? Ce n'est pas le bon endroit pour demander des informations qui se trouvent déjà dans la documentation.
4 votes
UIHint est une fonctionnalité très importante et malheureusement, la documentation à ce sujet est pauvre et il n'y a pas beaucoup d'articles ou d'exemples clairs sur Internet.