2012-01-24 36 views
3

インクリメントに問題があります。 新しいオブジェクトを作成してDBに設定しようとしましたが、データ違反のエラーが発生しました。表の指数は増加しなかった(Id = 0)。 ID - SQLテーブルの主キーとして設定され、EDMのフィールド "Id"のStoredGeneratedPatternプロパティが "Identity"に設定されているため、自動的に増分する必要があります。Entity Framework ID自動インクリメント

public void AddPhone(UserPhone phone) 
{ 
    context.AddToUserPhone(phone); 
    context.SaveChanges(); 
} 

なぜ理解できません。

+0

新しいオブジェクトが保存されましたか? – Eranga

答えて

5

Entity FrameworkはIDを自動的にインクリメントしません。それがデータベースの仕事です。データベーステーブルのID列をIDENTITY列として設定して、自動的にインクリメントします。次に、SaveChanges()の後に、電話機のIDプロパティが、データベースが選択した値に設定されていることがわかります。

関連する問題