2 つの異なるデータ コンテキストから 2 つのテーブルがあります。両方のテーブルは同じデータベースからのものですが、2 つの別個のデータ コンテキストが存在します。
エラーメッセージ:
クエリには、別のデータ コンテキストで定義された項目への参照が含まれています。
どうすればこれを回避できますか? どんな助けでも大歓迎です。ありがとう。
2 つの異なるデータ コンテキストから 2 つのテーブルがあります。両方のテーブルは同じデータベースからのものですが、2 つの別個のデータ コンテキストが存在します。
エラーメッセージ:
クエリには、別のデータ コンテキストで定義された項目への参照が含まれています。
どうすればこれを回避できますか? どんな助けでも大歓迎です。ありがとう。
コードが次の行に沿って何かを実行する場合:
from a in dc1.TableA
join b in dc2.TableB on a.id equals b.id
select new { a, b }
...次のように変更するだけです:
from a in dc1.TableA
join b in dc1.GetTable<TableB>() on a.id equals b.id
select new { a, b }
L2Sデータコンテキストはクラスの属性を使用するため、テーブルがアタッチされているデータコンテキスト以外のデータコンテキストでGetTableを使用すると、クラスdefからテーブル、列などの属性が取得され、一部であるかのように使用されます。クエリで使用しているDCの...
別の解決策は、結果を List() に変更することです。
var query = (from a in dc1.TableA
join b in dc2.TableB on a.id equals b.id
select new { a, b }).ToList()
あなたはそうしない。データコンテキストには、データベースの一貫性のないビューが含まれている可能性があります。