Frage:
So fügen Sie Datenanmerkungen zu einer von generierten Klasse hinzu Entity Framework (EF), das nach dem Code bestehen bleibt Regeneration?
Kontext:
Betrachten Sie eine von EF generierte Klasse:
public partial class ItemRequest { public int RequestId { get; set; } }
Diesen Code direkt ändern, um Anmerkungen hinzuzufügen (z. B. [Erforderlich ]) wird im nachfolgenden Code überschrieben Generation.
Antwort:
EF generiert Klassen als Teilklassen. Auf diese Weise können wir eine separate Teilklasse mit den gewünschten Datenanmerkungen erstellen:
using System.ComponentModel; using System.ComponentModel.DataAnnotations; // Ensure the namespace matches the original class namespace MvcApplication1.Models { // Metadata class for data annotations [MetadataType(typeof(ItemRequestMetaData))] public partial class ItemRequest { } public class ItemRequestMetaData { [Required] public int RequestId { get; set; } } }
Das MetadataType-Attribut verknüpft die ItemRequestMetaData-Klasse mit der ursprünglichen ItemRequest-Klasse. Dadurch können Datenanmerkungen in ItemRequestMetaData auf ItemRequest angewendet werden, ohne den generierten Code zu ändern.
Das obige ist der detaillierte Inhalt vonWie bleiben Datenanmerkungen in von Entity Framework generierten Klassen erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!