2009-07-27 22 views
3

私はプロジェクトでエンティティフレームワークを使用していますが、それは悪夢です!Entity Framework - SaveChanges()は生成されたIDキーを取得しません

私はフォームと呼ばれるテーブルを持っていた私はSQLデータベースを持っています。

フォームには、IDであるIDとID(自動的に増加します)があります。

私はこれをやっているこの時間:

Dim form as int32 
Dim dbform As New Entities1 
Dim form696 As New Form 

dbform.AddToForm696(form) 
dbform.SaveChanges() 

ID = form.ID 

週間前には、IDとform.IDは、挿入後に生成された鍵を持っていたが、今では唯一の私にはわからない0

を持っていますこのために何が起こったのかは分かりません。

複数のテーブルのストアドプロシージャの挿入、削除、および更新の名前を変更しなければならなかったので、このすべてを再度マップする必要がありました。たぶん私は間違ったことをしましたが、私は何度も見ていました。

誰かがヒントを持っていますか?

答えて

3

私はこの問題がパッチで解決されたと思います。それでもまだ機能していない場合は、データモデルを削除して追加してください。 EFはこれで今問題が少ないようです。

+1

私は最新のEF 4.1を持っていますし、IDを返さない – Korayem

0

OK ...私は私がしなければならなかった。この

http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/12/17/ado-net-entity-framework-tools-stored-procedures.aspx

忘れ「結合結果列を使用して、エンティティの列に新しい値をマッピングします。」

エンティティFwは私のためにしてはいけませんか?

+0

これは、モデルが関数またはストアドプロシージャにマップされている場合にのみ有効です。テーブルマッピングのための「Result Column Binding」はありません。あなたのモデルバインディングは何ですか? –

関連する問題