Modele de reliure

Les attributs sont des outils très utiles lorsque vous devez substituer le comportement par défaut de la liaison de modèle. [BindRequired]: cet attribut ajoute une erreur d`État du modèle si la liaison ne peut pas se produire. Maintenant, lorsque nous soumettons notre formulaire avec des valeurs de nom distinctes, le classeur de modèle personnalisé s`assure qu`ils sont tous concaténés et attribués à la propriété FullName du EmployeeViewModel. Nous pouvons facilement réécrire cette action pour utiliser une classe de modèle uniquement et éviter tous ces problèmes, comme illustré dans l`exemple 13-2. MVC contient plusieurs attributs que vous pouvez utiliser pour diriger son comportement de liaison de modèle par défaut vers une source différente. Par exemple, vous pouvez spécifier si la liaison est requise pour une propriété ou si elle ne doit jamais se produire à l`aide des attributs [BindRequired] ou [BindNever]. Vous pouvez également substituer la source de données par défaut et spécifier la source de données du classeur de modèles. Ci-dessous une liste des attributs de liaison de modèle: […] Reliure de modèle: un guide simple mort avec tout ce que vous devez savoir-Rodney Smith […] Un autre aspect important de la validation du modèle est d`informer les clients sur les éventuelles erreurs dans les données qu`ils ont envoyées avec une chance de corriger ces erreurs. Dans la pratique, lorsque cet aspect n`est pas appliqué, les développeurs cesseront simplement d`adopter l`API dans le cadre de leurs applications.

Le classeur de modèle personnalisé doit être enregistré. Si nous voulons le faire globalement, il peut être fait dans Global.asax.cs dans la méthode Application_Start (): dans la figure 13-2, les fournisseurs de valeur configurés prennent d`abord soin de décomposer le message en morceaux pour obtenir des valeurs différentes telles que l`ID de problème de la requête chaîne et le reste des champs du corps du message, qui ont été soumis en tant que HTTP PUT avec le type de média d`encodage de formulaire URL. Le classeur de modèles sélectionné travaille en étroite collaboration avec les fournisseurs de valeurs pour demander les données nécessaires à l`initialisation d`une nouvelle instance de classe issue. Étape 3 maintenant, nous devons ajouter la référence de ce modèle dans Controller avec l`aide de l`instruction using. Maintenant, nous devons passer l`objet EmployeeModel en tant que paramètre dans la méthode d`action d`index, afin que les données de notre formulaire/requête HTTP seront cartographiques, ci-dessous le code une application Web doit prendre en charge plusieurs sources de données, telles que JSON, XML, Atom ou OData. Toutefois, la façon dont la liaison de données est définie et implémentée dans les contrôles d`interface utilisateur doit être indépendante de la source de données respective. Il devrait également être possible de créer une implémentation de modèle personnalisé pour les sources de données qui ne sont pas encore couvertes par l`infrastructure ou qui sont spécifiques au domaine. Plus tôt, j`ai dit que «les classeurs de modèle permettent à votre code de contrôleur de rester proprement séparé de la saleté d`interroger la demande et son environnement associé». En général, lorsque nous pensons à Binder, nous pensons à déplacer des données à partir des données de routage et des valeurs de formulaire validées dans le modèle. Cependant, il n`y a aucune restriction de l`endroit où vous trouvez des données pour votre modèle.

Le contexte d`une requête Web est riche en informations sur le client.