Entity Framework 代码首先生成复合主键不起作用
Entity Framework code first generating compound primary key not working
根据我看到的所有示例,这段代码应该生成一个复合主键,但出于某种原因,它不是我的例子。
public abstract class MyBase
{
[Key, Column(Order = 0)]
public int Id { get; set; }
}
public abstract class MyClass : MyBase
{
[Key, Column(Order = 1)]
public AnotherClass AnotherClass { get; set; }
}
public abstract class AnotherClass : MyBase
{
}
我希望 MyClass
table 有一个由 Id
和 AnotherClass_Id
组成的复合外键。
我通过 Add-Migration -Force
解决了这个问题,然后重新搭建了迁移的脚手架,然后 Update-Database
。
但是我发现在做了Add-Migration -Force
之后,在更新数据库之前查看生成的迁移文件,看看效果是否是我想要的是有用的。
根据我看到的所有示例,这段代码应该生成一个复合主键,但出于某种原因,它不是我的例子。
public abstract class MyBase
{
[Key, Column(Order = 0)]
public int Id { get; set; }
}
public abstract class MyClass : MyBase
{
[Key, Column(Order = 1)]
public AnotherClass AnotherClass { get; set; }
}
public abstract class AnotherClass : MyBase
{
}
我希望 MyClass
table 有一个由 Id
和 AnotherClass_Id
组成的复合外键。
我通过 Add-Migration -Force
解决了这个问题,然后重新搭建了迁移的脚手架,然后 Update-Database
。
但是我发现在做了Add-Migration -Force
之后,在更新数据库之前查看生成的迁移文件,看看效果是否是我想要的是有用的。