問題:
如何向由Entity Framework 產生的類新增資料註解在程式碼之後持續存在的實體框架(EF)再生?
上下文:
考慮 EF 產生的類別:
public partial class ItemRequest { public int RequestId { get; set; } }
直接修改此程式碼以新增註解(例如,[必需])將被後續程式碼覆蓋
答案:
EF 將類別產生為部分類別。利用此功能,我們可以建立一個具有所需資料註解的單獨分部類別:
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; } } }
MetadataType 屬性將 ItemRequestMetaData 類別連結到原始 ItemRequest 類別。這允許將 ItemRequestMetaData 中的資料註解套用至 ItemRequest,而無需修改產生的程式碼。
以上是如何在實體框架產生的類別中保留資料註解?的詳細內容。更多資訊請關注PHP中文網其他相關文章!