|
|
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) |
|
dagda1 · 实体框架一对多有条件 10 年前 |
|
|
Ahmad · sql正常工作时,Linq查询不工作 10 年前 |
|
|
techV · 避免使用带有多个where子句的Lambda表达式 11 年前 |
|
|
Umesh Patil · 使用实体框架或linq显示记录 11 年前 |
|
|
mgsdew · 无法将类型“System.Collections.Generic.List<AnonymousType#1>”隐式转换为“System.Collections.Generic.List<DAL.HRM_PersonalInformations>” 11 年前 |
|
|
Gautam T Goudar · EF 4.0:根据条件包括 13 年前 |