首页 >后端开发 >C++ >如何在实体框架生成的类中保留数据注释?

如何在实体框架生成的类中保留数据注释?

Patricia Arquette
Patricia Arquette原创
2025-01-01 12:18:11977浏览

How to Persist Data Annotations in Entity Framework Generated Classes?

在实体框架生成的代码中保留数据注释

问题:

如何向由 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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn