Entity Framework 6从同一实体对象创建两个表

问题描述 投票:5回答:2

我想知道是否可以从一个定义的实体对象类创建两个表实例。

示例:

public class EntityA()
{
    public String name {get; set;}
    public String value {get; set;}
}

public class MyDbConext : DbContext
{
    public DbSet<EntityA> instance1{ get; set; }
    public DbSet<EntityA> instance2{ get; set; }
}

我正在尝试创建具有不同表名的实体A的两个实例。代码优先实体框架有可能吗?我觉得仅创建另一个扩展实体EntityA的类来创建同一实体的另一个实例似乎很麻烦。

所需的输出:

  • 从EntityA类中创建“ Instance1_Table”
  • 从EntityA类中创建“ Instance2_Table”

DBConext中的代码将引发异常。

任何建议,谢谢,D

c# asp.net ef-code-first entity-framework-6 code-first
2个回答
5
投票

您不能在一个DbSet中有多个DbContext指向同一个类。您的选择是:

  • 创建具有相同属性的新类
  • 继承
  • 使用不同的DBContext

© www.soinside.com 2019 - 2024. All rights reserved.