私はこの例外に直面していますAn attempt has been made to Attach or Add an entity that is not new, perhaps having been loaded from another DataContext. This is not supported
です。新しいエンティティを従業員テーブル(マスターテーブル)に挿入しようとしたときに発生します。InsertOnSubmit()を使用して新しいEmployeeエンティティを挿入できません
マスターEmployeesテーブルと詳細Ordersテーブルの間には関係があります。これらの2つのテーブル(特にEmployee.Orders EntitySet)の関係は、問題の原因であると確信しています。リレーションシップでは、問題なくEmployeesテーブルに挿入されます。
私は問題で検索すると、私が実装しようとしましたが、私の場合は、これらの項目でブログの記事内の1つとは異なっているthis blog postがあった:
- 試行を更新するとき、彼は例外に直面しているが(挿入しようとしている間)。
- テーブルのアーキテクチャは異なります。
どうすればこの問題を解決できますか?私のDataContextは、私のリポジトリ内のクラスレベルで定義されていると私はdc.SubmitChanges();
を呼び出すときに例外がスローされます。
Employee emp = new Employee();
emp.Name = empName; // empName is a local variable
// What should I default emp.Orders to?
dc.Employees.InsertOnSubmit(emp);
dc.SubmitChanges();
P.S:
は、ここで挿入コードです。そして私はしなかったアタッチそれはなぜそれを言うのですか?ここで
私はこの質問に答えるためにマーケティングキャンペーンを行うべきですか?私はそうだ、何かが間違っていることを意味する。 –
ソリューションに複数のDatacontextファイルがありますか? – Magnus
DataContextファイル?私はあなたが* .dbmlファイルを意味すると思う、いいえ、私は1つしかありません。 –