EF Code First中的许多关系具有不同的PK类型

时间:2016-06-24 15:22:13

标签: c# ef-code-first entity-framework-6 ef-migrations

我有2个实体CourseGroup,这些实体有许多相关内容。我正在使用代码首次迁移。当我update-database -v时它会抛出异常 我知道很多很多关系会创建另一个表GroupCourses

StackTrace : ALTER TABLE [dbo].[GroupCourses] ALTER COLUMN [Course_CourseId] [int] NOT NULL

Exception : Operand type clash: uniqueidentifier is incompatible with int

    public class Course
    {
        [Key]
        public int CourseId { get; set; }

        public virtual ICollection<Group> Groups { get; set; }
    }

    public class Group
    {
        [Key]
        public Guid groupId { get; set; }

        public virtual ICollection<Course> Courses{ get; set; }
    }

我认为这是由于两个实体中的PK类型不同。我对么?如果是,是否有任何解决方案可以解决这个问题。

先谢谢。

1 个答案:

答案 0 :(得分:0)

cannot update a primary key with Entity Framework

当你尝试更新时,我假设从一个Guid到一个int的PK CourseId,这是导致问题的原因(不是PK在关联表中是不同的类型,这很好)。

删除表格或手动更改类型。