2017-12-13 13 views
0

私はasp.netのWebを使用していますが、4.5LINQのは、参加して、カウントは私にエラーを与える...#

を形成cの私は

var query = _cc.products.Join(_db.lots, 
          p => p.parentLotIndex, 
          l => l.idx, 
          (p, l) => new {P = p, L = l}); 
int prodCount = query.Count(); 
ことにより、2つのテーブルの製品と多くを参加しようとしている理由がわかりません

編集:これは多対1の関係です。すなわち、単一のロットに関連する数が である可能性がある。したがって、クエリは、指定されたロットにどれくらいの数の製品があるかを見つけることです。

しかし、これは私に奇妙なエラーのような何かを与えます。..

NotSupportedException was unhandled by user code. 
The specified LINQ expression contains references to queries that are associated with different contexts. 

そして私はこれが何を意味するのか分かりません。 誰か助けてください。 ありがとうございます。

PS:ところで、 SQL管理スタジオでSQLクエリを実行すると、私に正しい答えが与えられました.. 標準のSQLクエリ..と私はlinqと何か間違っていると思います。

+0

あなたはそれをGoogleにしましたか?たぶんそれは関連していませんが、 https://stackoverflow.com/questions/7332920/error-the-specified-linq-expression-contains-references-to-queries-that-are-as – Nekeniehl

+0

Navigationプロパティはありませんかあなたは代わりに使うことができますか?また、それが1対1の関係であれば、なぜあなたは結合を必要としますか?それとも、実際には1対0か1の関係ですか? – juharr

+0

@juharr良い点。私はこれらの命名法に精通していないと思うので、製品を作ることができなかったので、私はそのことを知ろうとしているので、0対1の関係になると思うし、 –

答えて

1

あなたのコード内の2(!!!)の状況があります

  1. _cc .products

  2. _db .lots

とエラーメッセージが伝えますあなたはこれ。

関連する問題