私は何の結果もなくこのプログラムをデバッグしてきました、そして残念ながら私は問題の根本を見ることができません。この例外が発生します。ObjectContextインスタンスが破棄され、接続を必要とする操作に使用できなくなりました。
2つのテーブルがあります:-CustomerSet-OrderSet
OrdersテーブルのCustomer_idという名前のフィールドは、テーブル間の関係を保証します。また、OrdersテーブルにもCustomerという仮想ナビゲーションプロパティがあります。
シナリオは次のとおりです。Ordersテーブルに要素を挿入します。
Order order = new Order();
Order.order_id = GenerateId(IdType.Order);
Order.date = DateTime.Now;
Order.Customer_id = GetCustomerId(tbCustomerName.Text);
Insert(order);
Insertメソッド内のusingステートメントにはDBContextがあるため、必要に応じて自動的に破棄されます。私はこの中で働いています。
その後、以前に挿入された要素からのデータが必要です(たとえば、Customerフィールドのプロパティが必要です)。そして今、私は顧客フィールドが価値を得ることを望んでいます:
Order o = GetOrder(order.order_id);
そして、私はこれを取得しましたo顧客フィールドの例外:o。顧客はタイプ'System.ObjectDisposedException'の例外をスローしました
遅延読み込みをオンまたはオフにして遊んでいましたが、うまくいきませんでした。状況は同じです...
何を台無しにするのですか?
これで本当に素晴らしいのは、F11を段階的に実行すると、正しく機能することが多いということです。
助けてください!前もって感謝します。