Heim >Backend-Entwicklung >C#.Net-Tutorial >Entwickeln von Datenanmerkungen basierend auf der Modellebene in MVC5_Praktische Tipps

Entwickeln von Datenanmerkungen basierend auf der Modellebene in MVC5_Praktische Tipps

韦小宝
韦小宝Original
2017-12-15 10:26:532311Durchsuche

Der unten stehende Herausgeber wird Ihnen eine Anmerkung mitteilen, die auf den Modellschicht-Entwicklungsdaten in MVC5 basiert. Sie hat einen guten Referenzwert und ich hoffe, dass sie für alle hilfreich ist. Folgen wir dem Editor und werfen wir einen Blick darauf.

Die verwendeten Datenanmerkungen haben drei Funktionen:

Datenzuordnung (ordnen Sie die Klassen in der Modellebene mithilfe von EntityFramework den entsprechenden Tabellen zu)

Datenüberprüfung (überprüfen Sie die Gültigkeit der Daten auf dem Server und Client)

Datenanzeige (zeigen Sie die entsprechenden Daten an in den View-Layer-Daten)

Der Namespace im Zusammenhang mit Datenanmerkungen lautet wie folgt:

System.ComponentModel. DataAnnotations

System.ComponentModel.DataAnnotations.Schema

System.Web.Mvc

System.Web.Security

Der DataAnnotations-Namespace enthält die wichtigsten Datenanmerkungen und der Schema-Namespace. Er enthält einige Datenanmerkungen für die Datenzuordnung. Der Mvc-Namespace enthält Datenanmerkungen für Zeichen, Arrays, numerische Längen und Attributvergleiche. Der Security-Namespace enthält die Annotationsfunktion MemberShipPassword.

Datenanmerkungen im Zusammenhang mit der Datenzuordnung und -validierung:


tr >Numerischen Bereich angeben
[Erforderlich
[Required] 必填字段
[MaxLength] 指定属性中允许的数组或字符串数据的最大长度
[MinLength] 指定属性中允许的数组或字符串数据的最小长度
[StringLength] 指定最小和最大字符长度
[Range] 指定数值范围
d]
Pflichtfeld
[MaxLength] Geben Sie das im Attribut zulässige Array an oder String

Maximale Datenlänge

[MinLength] Die minimal zulässige Länge von Array- oder String-Daten im angegebenen Attribut td >
[StringLength] Geben Sie die minimale und maximale Zeichenlänge an
[Bereich]
Datenanmerkungen im Zusammenhang mit der Datenüberprüfung:


[Remote] 使用 jQuery 验证插件远程验证程序的特性
[FileExtension] 验证文件扩展名
[Compare] 比较两个属性的值
[RegularExpression] 使用正则表达式验证
[CustomValidation] 自定义验证方法
[DataType] 指定要与数据字段关联的附加类型的名称
[EmailAddress] 电子邮件地址(相当于[DataType(DataType.Email)])
[Phone] 电话(同上)
[CreditCard] 信用卡号码(同上)
[Url] 验证URL(同上)
[MemberShipPassword] 验证密码字段是否满足成员资格提供程序的当前密码要求
[Remote] Funktionen des Remote-Verifizierers mit dem jQuery-Verifizierungs-Plug-in [FileExtension] Dateierweiterung überprüfen [Compare] Vergleichen Sie die Werte von zwei Attribute td> [RegularExpression] Verwenden Sie Regulärer Ausdruck

Validierung

[CustomValidation] Benutzerdefinierte Validierungsmethode [ DataType] Gibt den Namen eines zusätzlichen Typs an, der dem Datenfeld zugeordnet werden soll [EmailAddress] E-Mail-Adresse (entspricht [DataType(DataType.Email)]) [Telefon] Telefon (wie oben) [CreditCard] Kreditkartennummer (wie oben) [Url] Bestätigungs-URL (wie oben) [MemberShipPassword] Überprüfen Sie, ob das Passwortfeld den aktuellen Passwortanforderungen des Mitgliedschaftsanbieters entspricht tr> Datenanmerkungen im Zusammenhang mit der Datenzuordnung:


[Schlüssel] Primärschlüsselfeld [Spalte] Zuordnung von Datenbankspaltenattributen [NotMapped] Erstellen Sie nicht das entsprechende Feld. [Table] Gibt die Datenbanktabelle an, der die Klasse zugeordnet wird. [ForeignKey] Stellt das Attribut dar, das als Fremdschlüssel in der Beziehung verwendet wird. [DatabaseGenerated] Gibt die Art und Weise an, wie die Datenbank generiert Attributwerte (EF verfolgt keine Attributänderungen)

Datenanzeigebezogene Datenanmerkungen:


























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


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

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

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

[AnzeigeName] td> Geben Sie die lokalisierte Zeichenfolge (Idiom-Typ) an
[Anzeige] Geben Sie die lokalisierte Zeichenfolge (Idiom-Attribut) an
[DisplayFormat] Legen Sie das Format des Datenfelds fest
[ReadOnly] Geben Sie an, ob Das an dieses Attribut gebundene Attribut ist ein schreibgeschütztes Attribut oder eine Lese-/Schreibeigenschaft
[EditAble] Gibt an, ob das Datenfeld bearbeitet werden kann td>
[HiddenInput] td> Gibt an, ob der Attributwert oder Feldwert als verstecktes Eingabeelement
[ScaffoldColumn] td> Geben Sie an, ob die Klasse oder Datenspalte Gerüste verwendet
[UIHint] Geben Sie die Vorlage an, die von dynamischen Daten zum Anzeigen von Datenfeldern verwendet wird
[UIHint] td>
Andere[Beschreibung]
[DisplayColumn ] Geben Sie die in der referenzierten Tabelle angezeigte Spalte als Fremdschlüsselspalte an
Das Visual Designer kann die angegebene Beschreibung anzeigen, wenn auf Komponentenmitglieder verwiesen wird (Namespace: System.ComponentModel.DescriptionAttribute)

1. Datenanmerkungen im Zusammenhang mit der Datenvalidierung erben die ValidationAttribute-Klasse und alle verfügen über ein ErrorMessage-Attribut , das für Fehlermeldung anzeigen.

Zum Beispiel:

[Erforderlich(ErrorMessage="Dieses Element darf nicht leer sein")].

2. Bei der Datenzuordnung dürfen

Int-Typ und DateTime-Typ in der Datenbank >, wenn auf NULL gesetzt werden muss, kann einen nullbaren Typ verwenden (verwenden Sie Int? oder DateTime?). Die obige Datenanmerkung basierend auf der Modellebenenentwicklung in MVC5 ist der gesamte vom Herausgeber geteilte Inhalt. Ich hoffe, er kann Ihnen eine Referenz geben! ! !

Verwandte Empfehlungen:

Instanzanalyse, wie ASP.NET MiniProfiler verwendet, um die MVC-Leistung in MVC5 zu überwachen

MVC5 beschränkt alle HTTP-Anfragen auf POST

Spezifische Code-Implementierung der MVC5-Dropdown-Box-Radiobindung

Das obige ist der detaillierte Inhalt vonEntwickeln von Datenanmerkungen basierend auf der Modellebene in MVC5_Praktische Tipps. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn