0

こんにちは、LINQ クエリの結果をオブジェクトのリストに変換しようとしていますが、各オブジェクトのプロパティにアクセスできないため、何か間違っているようです。コードは次のとおりです。

List<Object> productList = new List<Object>();

        var products = (from p in Products
                       join s in SubCategories on p.SubcatId equals s.SubCatId
                       join b in Brands on p.BrandId equals b.BrandId
                       select new
                                  {
                                      Subcategory = s.SubCatName,
                                      Brand = b.BrandName,
                                      p.ProductName,
                                      p.ProductPrice
                                  }).Where(x => x.Subcategory == subcategory);


        foreach (var product in products)
        {
            productList.Add(product);
        }

        foreach (var produs in productList){
            Console.WriteLine(produs.ProductName);
        }

これを行おうとすると、次のようなエラーが表示されます。

Object does not contain a definion for ProductName

同じことが他のすべてのフィールドにも当てはまります 2

私がこれをしようとするとアルド:

Console.WriteLine(produs);

各フィールドのデータを含むテーブルを取得します

LINQPAD でのテストのためにこれを実行しましたが、ビジュアル スタジオでも機能しません。何が間違っていますか?

4

3 に答える 3