我有以下由 Entity Framework 生成的类:

public partial class ItemRequest
{
    public int RequestId { get; set; }
    //...

我想让它成为必填字段
[Required]
public int RequestId { get;set; }

但是,由于这是生成的代码,因此将被清除。我无法想象创建分部类的方法,因为该属性是由生成的分部类定义的。如何以安全的方式定义约束?

最佳答案

生成的类 ItemRequest 将始终是 partial 类。这允许您编写标有必要数据注释的第二个分部类。在您的情况下,部分类 ItemRequest 将如下所示:

using System.ComponentModel;
using System.ComponentModel.DataAnnotations;

//make sure the namespace is equal to the other partial class ItemRequest
namespace MvcApplication1.Models
{
    [MetadataType(typeof(ItemRequestMetaData))]
    public partial class ItemRequest
    {
    }

    public class ItemRequestMetaData
    {
        [Required]
        public int RequestId {get;set;}

        //...
    }
}

关于c# - 向 Entity Framework 生成的类添加数据注释,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16736494/

10-13 00:24