首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体框架CTP4和组合键

实体框架CTP4和组合键
EN

Stack Overflow用户
提问于 2010-07-21 20:39:08
回答 1查看 2.2K关注 0票数 4

我正在使用EntityFramework CTP4,并决定将其应用到我当前的一个项目中。这个应用程序使用一个SQLServer数据库,并且有一个带有组合键的表。比方说,表"MyEntity“将"Key1”和"Key2“作为外键(单独)和组合主键。

我创建了一个从EntityConfiguration派生的配置类:

代码语言:javascript
复制
class MyEntityConfiguration : EntityConfiguration<MyEntity>
{
    public MyEntityConfiguration()
    {
        HasKey(m => m.Key1);
        HasKey(m => m.Key2);
    }
}

然后在我的DataContext (从DbContext派生)中:

代码语言:javascript
复制
    public DbSet<MyEntity> MyEntities { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Configurations.Add(new MyEntityConfiguration());
    }

问题是,当我查询"MyEntities“中的所有记录时:

代码语言:javascript
复制
var entities = from e in MyModel.Instance.MyEntities
               select e;

我得到了一个非常奇怪的结果,第一条记录重复了18次,第二条记录重复了18次(对于记录,我的表有36条记录)。

我怀疑问题出在组合键上,因为没有其他实体显示这个问题。

任何帮助都将不胜感激,谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-21 21:03:34

我还没有用我当前的数据库& CTP4测试它,但是在CTP3中,您可以创建一个组合键,如下所示:

代码语言:javascript
复制
HasKey(m => new { m.Key1, m.Key2 });
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3299268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档