- 550 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 07:41:28 ]
- C#, EF4で、ちょっとハマったので質問させてくれ。
DbContextというのがedmxで定義されたコンテキスト、Hogeというのがedmxで定義されたエンティティ型で、 Piyoがedmxとは関係ないクラスだとする。 「DbContext.Hoge.Select(x => new Piyo() { A = x.A, B = x.B })」 みたいな書き方は普通にできて、普通にIQueriable<Piyo>(実体はObjectQuery<Piyo>)が返ってくるよね。 CreateQueryを使って同じようなことがしたいとき(つまりObjectQuery<Piyo>がほしいとき) どうすればいいんだろう? 「DbContext.CreateQuery<Piyo>("SELECT VALUE Piyo (x.A, x.B) FROM Hoge AS x")」 こう書くと、「Piyoなんて型見つからない」って怒られるし、かといってE-SQL内でVALUE Piyoを 指定しないと「MaterializedDataRecordからPiyoに変換できない」と怒られるし(当然だけど)。
|

|