プロパティ Dnshostname とナビゲーション プロパティ TechnicalProductsHosted を持つ Computers というエンティティがあります。Computers と TechnicalProductsHosted は、多対 1 および 1 対多の関係です。TechnicalProductsHosted は、odata の TechnicalProducts です。エンティティ TechnicalProducts には、多対 1 の関係を持つナビゲーション プロパティ ResponsibleUser があります。ResponsibleUser は odata の Employee です。Employee には、多対 1 の関係を持つナビゲーション プロパティ Manager があります。マネージャーをクリックすると、従業員エンティティに移動します。マネージャー名のリストを取得したいと思います。Linqpadを使用しています。以下はコードです。
void Main()
{
var a = from cpuid in Computers
where cpuid.DnsHostName == "xyz"
select new {
ITManager = cpuid.TechnicalProductsHosted.Select (x => x.ResponsibleUser.Manager.Select(z => new { ITManager = z.Name })),
};
Console.WriteLine(a);
}
これがエラーです。'LINQPad.User.Employee' には 'Select' の定義が含まれておらず、タイプ 'LINQPad.User.Employee' の最初の引数を受け入れる拡張メソッド 'Select' が見つかりませんでした (F4 を押して using ディレクティブまたはアセンブリ参照を追加します) )