LINQの「クエリ」構文式の結果であるラムダ式を取得する方法があるかどうかを知る。LINQクエリのラムダへの構文
は考える:
var query = from c in dc.Colors
where c.ID == 213
orderby c.Name, c.Description
select new {c.ID, c.Name, c.Description };
は、生成された "ラムダ" コード/表現を取得する方法はありますか?
var query = dc.Colors
.Where(c => c.ID == 213)
.OrderBy(c => c.Name)
.ThenBy(c => c.Description)
.Select(c => new {c.ID, c.Name, c.Description, });
これは非常に単純な例であり、コードをコンパイルするときにC#コンパイラがクエリ式からラムダ式を生成することがわかりました。その表現のコピーを得る方法はありますか?
ラムダ式に慣れていない私のチームメンバーのために、これをトレーニングツールとして使用したいと考えています。また、私はLinqパッドを使用しましたが、理想的には、これはサードパーティのツールなしで達成することができます。
これは、Reflectorをアセンブリで使用した場合と同様の結果を示します。クレイジーな名前の匿名型に対するすべての静的メソッド呼び出し。理想的ではない。 – andleer
Reflectorで見るよりも優れています。サードパーティのツールを使用しなくても得意です。 –
あなたの本が大好きです。私はチームメンバーのためにいくつかのコピーを買った。 – andleer