將數據注釋添加到由實體框架生成的類我有實體框架生成的以下類:public partial class ItemRequest{
public int RequestId { get; set; }
//...我想把它變成一個必填字段[Required]public int RequestId { get;set; }但是,因為這是生成的代碼,這將被消滅。我無法想象一種創建分部類的方法,因為屬性是由生成的分部類定義的。如何以安全的方式定義約束?
3 回答

慕田峪9158850
TA貢獻1794條經驗 獲得超8個贊
生成的類ItemRequest
將始終是一個partial
類。這允許您編寫第二個部分類,該部分類標有必要的數據注釋。在您的情況下,部分類ItemRequest
看起來像這樣:
using System.ComponentModel;using System.ComponentModel.DataAnnotations;//make sure the namespace is equal to the other partial class ItemRequestnamespace MvcApplication1.Models { [MetadataType(typeof(ItemRequestMetaData))] public partial class ItemRequest { } public class ItemRequestMetaData { [Required] public int RequestId {get;set;} //... }}

青春有我
TA貢獻1784條經驗 獲得超8個贊
我找到了像MUG4N的答案之MetaData
類的解決方案,而是將類嵌套在實體類中,從而減少了公共命名空間列表中的類數,并且無需為每個元數據類創建唯一的名稱。
using System.ComponentModel.DataAnnotations;namespace MvcApplication1.Models { [MetadataType(typeof(MetaData))] public partial class ItemRequest { public class MetaData { [Required] public int RequestId; //... } }}
- 3 回答
- 0 關注
- 405 瀏覽
添加回答
舉報
0/150
提交
取消