Maison  >  Article  >  développement back-end  >  Développer des annotations de données basées sur la couche Modèle dans MVC5_Conseils pratiques

Développer des annotations de données basées sur la couche Modèle dans MVC5_Conseils pratiques

韦小宝
韦小宝original
2017-12-15 10:26:532217parcourir

L'éditeur ci-dessous partagera avec vous une annotation basée sur les données de développement de la couche modèle dans MVC5. Elle a une bonne valeur de référence et j'espère qu'elle sera utile à tout le monde. Suivons l'éditeur et jetons un œil.

Développement de la couche modèle dans ASP.NET MVC5 Les annotations de données utilisées ont trois fonctions :

. Mappage des données (mapper les classes de la couche Modèle dans les tables correspondantes à l'aide d'EntityFramework)

Vérification des données (vérifier la validité des données sur le serveur et le client)

Affichage des données (afficher les données correspondantes dans les données de la couche View)

L' espace de noms lié ​​aux annotations de données est le suivant :

System.ComponentModel. DataAnnotations

System.ComponentModel.DataAnnotations.Schema

System.Web.Mvc

System.Web.Security

L'espace de noms DataAnnotations contient les principales annotations de données et l'espace de noms Schema. Il contient des annotations de données pour le mappage des données. L'espace de noms Mvc contient des annotations de données pour les caractères, les tableaux, les longueurs numériques et les comparaisons d'attributs. L'espace de noms Security contient la fonctionnalité d'annotation MemberShipPassword.

Annotations de données liées au mappage et à la validation des données :


tr >Spécifier la plage numérique
[Require
[Required] 必填字段
[MaxLength] 指定属性中允许的数组或字符串数据的最大长度
[MinLength] 指定属性中允许的数组或字符串数据的最小长度
[StringLength] 指定最小和最大字符长度
[Range] 指定数值范围
d]
Champ obligatoire
[MaxLength] Spécifiez le tableau autorisé dans l'attribut ou String

Longueur maximale des données

[MinLength] La longueur minimale des données de tableau ou de chaîne autorisées dans l'attribut spécifié td >
[StringLength] Spécifiez la longueur minimale et maximale des caractères
[Plage]
Annotations de données liées à la vérification des données :


[Remote] 使用 jQuery 验证插件远程验证程序的特性
[FileExtension] 验证文件扩展名
[Compare] 比较两个属性的值
[RegularExpression] 使用正则表达式验证
[CustomValidation] 自定义验证方法
[DataType] 指定要与数据字段关联的附加类型的名称
[EmailAddress] 电子邮件地址(相当于[DataType(DataType.Email)])
[Phone] 电话(同上)
[CreditCard] 信用卡号码(同上)
[Url] 验证URL(同上)
[MemberShipPassword] 验证密码字段是否满足成员资格提供程序的当前密码要求
[Remote] Fonctionnalités du vérificateur distant utilisant le plug-in de vérification jQuery [FileExtension] Vérifier l'extension du fichier [Comparer] Comparer les valeurs de deux attributs td> [RegularExpression] Utilisez Expression régulière

Validation

[CustomValidation] Méthode de validation personnalisée [ DataType] Spécifie le nom d'un type supplémentaire à associer au champ de données [EmailAddress] Adresse e-mail (équivalente à [DataType(DataType.Email)]) [Téléphone] Téléphone (identique à ci-dessus) [CreditCard] Numéro de carte de crédit (identique à ci-dessus) [Url] URL de vérification (identique à celle ci-dessus) [MemberShipPassword] Vérifiez que le champ du mot de passe répond aux exigences actuelles du fournisseur d'adhésion en matière de mot de passe tr> Annotations de données liées au mappage de données :


[Clé] Champ de clé primaire [Colonne] Mappage des attributs de colonne de base de données [NotMapped] Ne pas créer le champ correspondant [ Table] Spécifie la table de base de données à laquelle la classe sera mappée [ForeignKey] Représente l'attribut utilisé comme clé étrangère dans la relation [DatabaseGenerated] Spécifie la façon dont la base de données génère valeurs d'attribut (EF ne suit pas les modifications d'attribut)

Données Afficher les annotations de données associées :


























tbody>
[DisplayName] 指定本地化的字符串(习惯用语类)
[Display] 指定本地化的字符串(习惯用语属性)
[DisplayFormat] 设置数据字段的格式
[ReadOnly] 指定该特性所绑定到的属性是只读属性还是读/写属性
[EditAble] 指示数据字段是否可编辑
[HiddenInput] 指示是否应将属性值或字段值呈现为隐藏的 input 元素
[ScaffoldColumn] 指定类或数据列是否使用基架
[UIHint] 指定动态数据用来显示数据字段的模板
td>


[DisplayColumn] 将所引用的表中显示的列指定为外键列
[Description]

可视化设计器在引用组件成员时可以显示指定的说明

(命名空间:System.ComponentModel.DescriptionAttribute)

[AffichageNom] td> Spécifier une chaîne localisée (type d'idiome)
[Affichage] Spécifier une chaîne localisée (attribut d'idiome)
[DisplayFormat] Définir le format du champ de données
[ReadOnly] Spécifier si l'attribut lié à cet attribut est un attribut en lecture seule ou une propriété en lecture/écriture
[EditAble] Indique si le champ de données est modifiable td>
[HiddenInput] td> Indique si la valeur d'attribut ou la valeur de champ doit être rendue en tant qu'élément d'entrée caché
[ScaffoldColumn] td> Spécifiez si la classe ou la colonne de données utilise un échafaudage
[UIHint] Spécifiez le modèle utilisé par les données dynamiques pour afficher les champs de données
[UIHint] td>
Autre[Description]
[DisplayColumn ] Spécifiez la colonne affichée dans la table référencée comme colonne de clé étrangère
Le visuel Le concepteur peut afficher la description spécifiée lors du référencement des membres du composant (espace de noms : System.ComponentModel.DescriptionAttribute)

1. Les annotations de données liées à la validation des données héritent de la classe ValidationAttribute , et ont toutes un attribut ErrorMessage utilisé pour Afficher un message d'erreur.

Par exemple :

[Obligatoire(ErrorMessage="Cet élément ne peut pas être vide")].

2. Dans le mappage de données, le

Le type Int et le type DateTime ne sont pas autorisés à être NULL par défaut dans la base de données >, si doit être défini sur NULL, peut utiliser un type nullable (utiliser Int ? ou DateTime ?). L'annotation de données ci-dessus basée sur le développement de la couche modèle dans MVC5 est tout le contenu partagé par l'éditeur. J'espère qu'elle pourra vous donner une référence ! ! !

Recommandations associées :

Exemple d'analyse de la façon dont ASP.NET utilise MiniProfiler pour surveiller les performances de MVC dans MVC5

MVC5 restreint toutes les requêtes HTTP à être en mode POST

Implémentation de code spécifique de la liaison radio de la liste déroulante MVC5

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn