1

以下のようなラムダ式があります

Projects.Where(Project => (Project.PostalCode == "5000"))

次のようなSQLクエリを生成します

SELECT [Id] AS [Id], [Title] AS [Title], .........
[AddressLine1] AS [AddressLine1]
from Project  where PostalCode == "5000"

ここでは、ラムダ式で選択クエリを生成したいと思います。エンティティに 100 を超えるフィールドがある可能性があります。パフォーマンスに影響するため、これらすべてのフィールドは必要ありません。

動的に選択できる列が 5 ~ 8 個必要です。私が手動で生成した以下の作品

Projects.Where(Project => (Project.PostalCode == "5000")).Select(p=>new{id=p.Id, titile=p.Title, desc=p.OwnDescription, pc=p.PostalCode})

いくつかの投稿を調べましたが、十分な情報が得られませんでした。選択クエリを動的に構築する方法を知っている人はいますか?

4

1 に答える 1

0

ここで解決策を得ました。ソースコード付きの興味深い記事です。 http://carlisknight.blogspot.in/2010/02/now-change-linq-statement-to-dynamic.html

于 2013-01-10T12:38:49.610 に答える