質問: asp.net 5、MVC 6、コード1、エンティティフレームワーク7、ベータ8を使用します。 私はいくつかの検証は、データ型、最小値、最大値、jqueryスクリプトなどのプロパティの注釈を使って処理できることを理解していますが、重複したエントリをデータベースに取り込むコード検証では、フォーム上の-mail reg 私のモデルプロパティでこれに対して使用できる注釈があるか、このカスタム検証を処理するためにコントローラに何かをコーディングする必要がありますか?誰でも共有する事例がありますか?
回答: EF7にはテーブル内の重複値を防ぐための魔法はありません。重複を検証する唯一の方法は、データベースへのラウンドトリップを行うことです。これを行う最善の方法は、固有の制約です。これはユニークなインデックスとして表現されるかもしれません。重複エントリを挿入しようとすると、例外がスローされます。 つまり、OnConfiguringメソッドでデータベース内の一意のインデックスを認識するようにEF7を構成できます。 EF7ドキュメントの「 インデックス:モデルの設定 」を参照してください。 ``` modelBuilder.Entity() .Index(b => b.Email) .Unique(); ```