|
|
1
1
不幸的是,你所要求的是不可能实现的。.NET不允许多重继承,因此这不是(也不会是)EF或任何其他ORM的功能。 您必须在ef设计器中删除继承,并且只允许表之间的正常1:1*关联。 您将最终得到所需的数据库设计,并且您的C语法将如下所示:
|
|
|
2
0
把客户和供应商的共同点放在客户身上,只放在客户身上特定于客户的东西,供应商身上特定于供应商的东西。 3个表,3种对象。 |
|
|
3
0
我知道这个职位,如果5岁的英孚还没有解决这个问题… 也许我遗漏了一些东西,但是ef不会让多个孩子从一个父母那里继承,而dotnet完全可以做到这一点。我可以通过将每个实体更改为分部类,然后定义每个分部类实现的接口来解决这个问题。太荒谬了。数据库中的每个表都有4列:createdby、createdon、updatedby、updatedon。如果我在实体框架中创建一个抽象类,我应该能够从这个抽象类继承每个实体,这样每个实体都有这四个字段。但不能。只能从抽象类继承一个表。这毫无意义。它完全破坏了抽象类的目的。我希望每个实体都具有这四个字段,但只有一个孩子可以拥有它们。公司应该有这四个领域。设施,公司的一个孩子,也应该有这四个领域。但不行,不行。尽管TimestampTable是一个抽象类,但只有一个表可以继承,只有一个表获得四个字段 这是实体图 不管怎样,我感觉到你的痛苦,还有工作要做。创建所需的接口,将实体更改为分部类,然后在每个实体的单独文件中从该接口继承分部类,
您必须在每个分部类文件中手工实现该接口。 祝你好运(或找到另一个ORM) 父级和dotnet完全可以做到这一点。我可以通过将每个实体更改为分部类,然后定义每个分部类实现的接口来解决这个问题。太荒谬了。数据库中的每个表都有4列:createdby、createdon、updatedby、updatedon。如果我在实体框架中创建一个抽象类,我应该能够从这个抽象类继承每个实体,这样每个实体都有这四个字段。但不能。只能从抽象类继承一个表。这毫无意义。它完全破坏了抽象类的目的。我希望每个实体都具有这四个字段,但只有一个孩子可以拥有它们。公司应该有这四个领域。设施是公司的子项,也应该有这四个字段。但不行,不行。尽管TimestampTable是一个抽象类,但只有一个表可以继承,只有一个表获得四个字段
这是实体图
……不管怎样,我感觉到了你的痛苦,周围还有工作。创建所需的接口,将实体更改为分部类,然后在每个实体的单独文件中从该接口继承分部类, 您必须在每个分部类文件中手工实现该接口。 祝你好运(或找到另一个ORM) |
|
|
Silverspur · “X是Y的模糊基”:多重继承噩梦 8 年前 |
|
|
Aedoro · 扩展多个类的C++函数参数 8 年前 |
|
|
user6022430 · Python3.4多重继承调用特定构造函数 10 年前 |
|
|
Mark van der Wilk · 用于重写继承方法的Mixin 10 年前 |
|
pasha · 是否可以为复制基的虚拟函数提供不同的定义? 10 年前 |
|
|
Daniel · 如何使继承从父类到子类python34起作用 10 年前 |