0

この動的 LINQ ライブラリを Linq-to-Entities と共に使用します。
私はクエリを作成し、その後それを繰り返しますforeach(object e in query){}

query=db.Table1.Where("it.FieldA>10").Select("it.FieldB");動作します。
query=db.Table1.Where(e=>e.FieldA>10).GroupBy("it.FieldB", "it").Select("key")動作します。
ただし、ステートメントに沿ったメッセージでquery=db.Table1.Where("it.FieldA>10").GroupBy("it.FieldB", "it").Select("key")原因となります。EntitySqlExceptionThe query syntax is not valid., near keyword 'FROM', line 2, column 1.foreach

例外なく動作させるにはどうすればよいですか?

db.Table1.Where(e=>e.FieldA>10)の型はですがIQueryable<Table1>、の型db.Table1.Where("it.FieldA>10")はであることに注意してくださいSystem.Data.Objects.ObjectQuery<Table1>

4

1 に答える 1

0

見つけてdb.Table1.AsQueryable()修正したので、db.Table1.AsQueryable().Where("it.FieldA>10").GroupBy("it.FieldB", "it").Select("key") 例外なく動作します。

問題は、Microsoft Dynamic Linq ライブラリが を拡張しているため、どちらが の型であるかIQueryable<Table1>に影響しないことでした。 ObjectQuery<Table1>db.Table1

于 2010-08-09T17:22:09.610 に答える