基本的に私はこのような何かをしたい:EFコア複合キーAUTO_INCREMENT二列
+----+------+-----+
| Id | Name | Ver |
+----+------+-----+
| 1 | Foo | 1 |
| 2 | Foo | 2 |
| 3 | Bar | 1 |
| 4 | Baz | 1 |
+----+------+-----+
各オブジェクトには、バージョンが割り当てられています。バージョン番号はDBによって自動インクリメントされます。
u.HasKey(x => x.Id);
u.HasKey(x => new { x.Name, x.Ver });
u.Property(x => x.Ver)
.ValueGeneratedOnAdd();
及びその
u.HasKey(x => new { x.Name, x.Ver, x.Id });
および変形を:自然に各新しいバージョンのオブジェクトのために、バージョン番号は、私が試した1
にリセットする必要があります。
私に何が欲しいかわからない。新しい名前付きエントリを追加するたびに、Ver
は増分を維持します。
これはできません。値の生成はEFコアで2つの方法で行われます。クライアント値ジェネレータを提供するか、データベースを設定して値を生成します。データベースを自動インクリメントに設定する方法を考えることができますが、新しいバージョン名でリセットする場合は、私たちに知らせてください。私はそのためにデータベースを設定する方法を提供することができます。 – Smit