我有2个实体Course
和Group
,这些实体有许多相关内容。我正在使用代码首次迁移。当我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类型不同。我对么?如果是,是否有任何解决方案可以解决这个问题。
先谢谢。
答案 0 :(得分:0)
你cannot update a primary key with Entity Framework。
当你尝试更新时,我假设从一个Guid到一个int的PK CourseId,这是导致问题的原因(不是PK在关联表中是不同的类型,这很好)。
删除表格或手动更改类型。