私は私の一対一の関係をEFコア1.1を使用して作成されています、例: EFコア1.1は、1対1
EntityTypeBuilder<Account>
.HasOne(a => a.Customer)
.WithOne(a => a.Account)
.HasForeignKey<Account>(a => a.CustomerId)
は今アドオンの移行を上で使用して私のDbContextは次のように生成します:
migrationBuilder.CreateIndex(
name: "IX_Accounts_CustomerId",
table: "Accounts",
column: "CustomerId",
unique: true);
インデックスから一意性を削除する方法はありますか?私はインデックスが生成されても構いませんが、私の目的のためには一意にすることはできません。その理由は、これらのテーブルは監査可能であるため、重複するデータ(PKの外部)が存在する可能性があるからです。したがって、レコードには、そのFKエンティティに変更がない場合(ただしレコード内の他の場所で変更される可能性がある)、同じFK idを含むことができます。
TL; DR 1対1 FKのFluentでインデックスを一意にする方法はありませんか?
テーブルに重複を含めることができる場合は、「1対1」ではなく「1対多」であると思いますか? –