gpt4 book ai didi

c# - Entity Framework Database First 从基类继承模型

转载 作者:行者123 更新时间:2023-11-30 20:57:01 24 4
gpt4 key购买 nike

我正在使用 Entity Framework Database First 来处理数据库。

我有一个基类 EntityBase

public class EntityBase
{
public Int32 Id { get; set; }
}

我有一些由 EnitytFramework 生成并代表我的数据库表的其他类,例如“用户”类:

public class User
{
public int32 Id{get;set;}
public class Name{get;set;}
public class Age{get;set;}
}

我希望所有 EF 模型类都继承自 EntityBase:

public class User : EntityBase

我可以手动执行此操作,方法是从 User 类中删除 Id 字段并定义继承,但是在我从数据库更新模型后,所有手动更改都会消失。有什么方法可以保留或自动向 EF 模型类添加继承?

最佳答案

如果您手动更改类、保存并编译,EF 数据库首先使用 t4 文件,T4 将再次生成类,您将丢失更改。您必须在 T4 模板中进行此更改。搜索 EntityClassOpening 方法并更改最后一行:

_typeMapper.GetTypeName(entity.BaseType)

使用此代码:

_typeMapper.GetTypeName(entity.BaseType) ?? "EntityBaseClass"

关于c# - Entity Framework Database First 从基类继承模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17171440/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com