1
にデータを選択することはできませんLINQクエリは、だから私は下にLINQクエリを持つカスタムクラスオブジェクト
The entity or complex type 'TPE' cannot be constructed in a LINQ to Entities query.
I正確にこれを行う他のLINQクエリを調べましたが、なぜクエリが機能していないのか分かりません。どんな洞察?
にデータを選択することはできませんLINQクエリは、だから私は下にLINQクエリを持つカスタムクラスオブジェクト
The entity or complex type 'TPE' cannot be constructed in a LINQ to Entities query.
I正確にこれを行う他のLINQクエリを調べましたが、なぜクエリが機能していないのか分かりません。どんな洞察?
ここで最も簡単な方法は、匿名型にフェッチすることで、その後AsEnumerable
を経由して、残りのインプロセスを実行します。
return (from p in _db.P
join t in _db.TP on p.Id equals t.PId
select new { t.PId, t.Id }).AsEnumerable()
.Select(x => new TPE { PId = x.PId, TId = x.Id })
.ToList();
またはすべての拡張でメソッドの構文:
return _db.P.Join(_db.TP, p => p.Id, t => t.PId,
(p, t) => new { t.PId, t.Id })
.AsEnumerable()
.Select(x => new TPE { PId = x.PId, TId = x.Id })
.ToList();
ああ、それは動作します。どうもありがとう!また、私の問題が何かを知りました。私はそれをEntity Frameworkオブジェクトにマッピングしていましたが、明らかにADO.NETでそれを行うことはできません。 http://stackoverflow.com/questions/5325797/the-entity-cannot-be-constructed-in-a-linq-to-entities-queryを参照してください。 –