dbaseman の回答 (および AKX のコメント) と同様に、次を使用しますCast。
IEnumerable<MyClass> vats = here.All().Cast<MyClass>();
usingただし、LINQのディレクティブが必要です。
using System.Linq;
ファイルの上部にあります。Selectメソッドが認識されない場合は、それを取得していないようです。
これは、各値が実際に参照であることを前提としていることに注意してMyClassください。
編集:インデックスで値にアクセスできるようにしたい場合は、次を使用することをお勧めしToListます:
List<MyClass> vats = here.All().Cast<MyClass>().ToList();
これも機能しToArrayますが、個人的には、ほとんどの場合、配列よりもリストの方が柔軟性に優れているため、リストを好みます。
編集:あなたの結果は実際にはいっぱいのようですExpandoObject。MyClass各アイテムからの新しいインスタンスを作成する必要があります。
List<MyClass> vats = here.All()
.Select(item => new MyClass(item.Name, item.Value))
.ToList();
またはおそらく:
List<MyClass> vats = here.All()
.Select(item => new MyClass {
Name = item.Name,
Value = item.Value,
})
.ToList();
これは単なる例であり、すぐには機能しないと思います。結果が実際にどのように返されるかについては何も知らないため、これ以上のことはできません。
残念ながら、あなたはここで頭を抱えているように聞こえます。