我正在使用EntityFramework CTP4,并决定将其应用到我当前的一个项目中。这个应用程序使用一个SQLServer数据库,并且有一个带有组合键的表。比方说,表"MyEntity“将"Key1”和"Key2“作为外键(单独)和组合主键。
我创建了一个从EntityConfiguration派生的配置类:
class MyEntityConfiguration : EntityConfiguration<MyEntity>
{
public MyEntityConfiguration()
{
HasKey(m => m.Key1);
HasKey(m => m.Key2);
}
}然后在我的DataContext (从DbContext派生)中:
public DbSet<MyEntity> MyEntities { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new MyEntityConfiguration());
}问题是,当我查询"MyEntities“中的所有记录时:
var entities = from e in MyModel.Instance.MyEntities
select e;我得到了一个非常奇怪的结果,第一条记录重复了18次,第二条记录重复了18次(对于记录,我的表有36条记录)。
我怀疑问题出在组合键上,因为没有其他实体显示这个问题。
任何帮助都将不胜感激,谢谢:)
发布于 2010-07-21 21:03:34
我还没有用我当前的数据库& CTP4测试它,但是在CTP3中,您可以创建一个组合键,如下所示:
HasKey(m => new { m.Key1, m.Key2 });https://stackoverflow.com/questions/3299268
复制相似问题