Les développeurs qui utilisent l’architecture MVC doivent créer leur propre code HTML pour les formulaires d’édition et d’affichage, une tâche souvent fastidieuse et sujettes à erreurs.
Visual Studio 2010 ASP.NET MVC, 2Fonctions annexes avec modèle
Un formulaire d’édition type contient plusieurs champs, chacun d’eux avec un schéma similaire à ce qui suit :
‹div class= »editor-label »>
‹%= Html.LabelFor(m => m.TestDatePicker) %>
‹/div>
‹div class= »editor-field »>
‹%= Html.TextBoxFor(m => m.TestDate)%>
‹%= Html.ValidationMessageFor(m => m.TestDatePicker) %>
‹/div>
Afin d’augmenter la productivité des développeurs, Visual Studio 2010 ASP.NET MVC 2 a introduit les fonctions annexes (helper) fortement typées et avec modèle, dont les noms se terminent généralement par « For », et qui utilisent des expressions lambda afin de fournir un contrôle au moment de la compilation et la fonction IntelliSense. Ces fonctions annexes utilisent largement les attributs DataAnnotation placés sur la classe et les champs de Modèle, afin d’assurer le rendu approprié des libellés et noms de champs, et d’effectuer des contrôles de validation.
Les fonctions annexes avec modèle (Templated helper) permettent d’assurer le rendu de tous les champs pour un formulaire d’édition ou d’affichage concernant un objet entier au moyen d’une seule méthode d’extension :
‹%= Html.EditorForModel() %>
ASP.NET MVC 2 fournit un ensemble de modèles par défaut servant au rendu de chaque champ dans un objet de Modèle, sur la base de son type de données et de ses attributs DataAnnotation. Pour la majeure partie, ces modèles assurent un rendu raisonnable du HTML, mais il arrive parfois que vous souhaitiez personnaliser le rendu pour un type de données particulier, toutes les classes de données, voire une classe de données spécifique. ASP.NET MVC 2 fournit un point d’extension qui permet aux développeurs de remplacer ses modèles par défaut. Il est possible d’exploiter cette fonctionnalité afin d’ajouter un DatePicker jQuery à tous les champs DateTime.
Afin de créer un modèle d’éditeur personnalisé pour le type DateTime, commencez par créer le dossier Views/Shared/EditorTemplates dans votre projet ASP.NET MVC et intégrez une Vue partielle intitulée DateTime.ascx. Ajoutez le contenu suivant à la Vue partielle :
‹%@ Control Language= »C# » Inherits= »System.Web.Mvc.<br />ViewUserControl » %>
‹% string formatString = ViewData.ModelMetadata.DisplayFormat-
String ?? « {0:d} »; %>
‹% string displayString = String.Format(formatString, this.
Model); %>
‹%=Html.TextBox(« », displayString, new { @class = « myDatePick-
erClass » })%>
Chaque fois qu’une méthode de fonction annexe avec modèle telle que Html.EditorFor-Model() est appelée, ASP.NET MVC 2 utilise ce modèle pour le rendu de tous les champs DateTime dans le Modèle. Le modèle personnalisé dans mon exemple définit une valeur formatée initiale pour le TextBox soit en employant un format spécifié sur le champ du Modèle au moyen d’un attribut DisplayFormat DataAnnotation, soit en utilisant un format d’affichage par défaut.
Bien que ASP.NET MVC 2 n’utilise pas de contrôles serveur enrichis comme le modèle Web Forms, des bibliothèques open source telles que jQuery UI peuvent fournir des plug-ins qui offrent les mêmes fonctionnalités enrichies dans le navigateur avec seulement quelques lignes de code.
Téléchargez cette ressource
Guide de Threat Intelligence contextuelle
Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- IA Agentique : la vraie rupture c’est la gouvernance humaine
- Les défaillances des pipelines de données pèsent lourdement sur la performance des grandes entreprises
- Les nouvelles menaces liées à l’IA obligent les entreprises à dépasser la seule stratégie de sauvegarde
- Gestion des vulnérabilités : pourquoi seulement 7,6 % des entreprises corrigent les failles critiques en moins de 24 heures
Articles les + lus
Une nouvelle ère de la modernisation du mainframe
Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
Adapter la sécurité OT aux réalités de l’industrie
Coder vite, mais coder juste : trouver l’équilibre à l’ère de l’IA
À la une de la chaîne Tech
- Une nouvelle ère de la modernisation du mainframe
- Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
- DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
- Adapter la sécurité OT aux réalités de l’industrie
- Coder vite, mais coder juste : trouver l’équilibre à l’ère de l’IA
