EFコア2には、ForeignKeysのネーミングシステムが異なります(またはそれ以上)。名前はFK_Table_ReferencedTable_FKProperties
として作成されます。ここで、TableはFK制約が定義されている場所です。 ReferencedTableは主要な側面です。また、FKPropertiesは、外部キーのプロパティの別々のリストである_
です。おそらく、それはあなたが望む命名システムとマッチするでしょう。
外部キーのプロパティの名前をカスタマイズしたい場合、efコアにはまだユーザ定義の規約サポートはありません。しかし、EF Coreを使用すると、モデルメタデータを繰り返し処理して、必要な設定を行うことができます。派生したDbContext
のOnModelCreating
メソッドでは、以下のコードをFKという名前にしておきます。
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
// Configure model
foreach (var entityType in modelBuilder.Model.GetEntityTypes())
{
foreach (var declaredForeignKey in entityType.GetDeclaredForeignKeys())
{
declaredForeignKey.Relational().Name = "<Construct_FK_Name>";
}
}
}
ありがとう、それはとても良いですね。私はテストします。 – gabomgp