Les modèles d'éditeurs fonctionnent par convention. Le nom du modèle doit correspondre au nom du type. Par exemple, si SomeValue
est un int
vous pourriez écrire un modèle d'éditeur personnalisé à ~/Views/Shared/EditorTemplates/Int32.cshtml
qui sera utilisé. Dans ce cas, tous les types d'entiers utiliseront ce modèle personnalisé lorsque vous écrirez @Html.EditorFor(model => model.SomeValue)
.
Si vous ne souhaitez pas remplacer tous les modèles pour les types entiers, vous pouvez écrire un modèle spécifique nommé ~/Views/Shared/EditorTemplates/Number.cshtml
que vous pouvez utiliser uniquement pour certaines propriétés en spécifiant le nom de ce modèle comme second argument de la fonction EditorFor
aide : @Html.EditorFor(model => model.SomeValue, "Number")
ou en décorant la propriété de votre modèle de vue avec l'attribut [UIHint]
attribut :
[UIHint("Number")]
public int SomeValue { get; set; }
et en utilisant simplement @Html.EditorFor(model => model.SomeValue)
rendra le Number.cshtml
modèle personnalisé.
Je vous recommande également de lire l'ouvrage de Brad Wilson intitulé blog post
sur les modèles par défaut dans ASP.NET MVC.