NDepend で CQLinq を使用して識別子の平均長を計算しています。クラス、フィールド、およびメソッドの名前の長さを取得したいと考えています。私は CQlinq のこのページを見ていきました: http://www.ndepend.com/docs/cqlinq-syntax、そして私は次のようなコードを持っています:
let id_m = Methods.Select(m => new { m.SimpleName, m.SimpleName.Length })
let id_f = Fields.Select(f => new { f.Name, f.Name.Length })
select id_m.Union(id_f)
それは動作しません、1 つのエラーは言う:
「System.Collections.Generic.IEnumerable」には「Union」の定義が含まれていません...
もう1つは次のとおりです。
「System.Collections.Generic.IEnumerable」から「System.Collections.Generic.HashSet」に変換できません
ただし、MSDNによると、IEnumerable インターフェイスは Union() および Concat() メソッドを定義します。
Linq とまったく同じように CQLinq を使用することはできないようです。とにかく、単一のクエリ内でタイプ、メソッド、およびフィールドのドメインから情報を取得する方法はありますか?
どうもありがとう。