クラス A (メンバー FName、LName、Total を含む) のデータを保持する List Say foo があります。LName が「foobar」であるデータのリストを取得する必要があります。
これは簡単な質問に聞こえると思いますが、これは私を怒らせます! 実行時にリストを返すためのメンバーを取得するためです。
前もって感謝します
編集:申し訳ありませんが、リストは動的であり、リストはオブジェクト型です。実行時にのみクラス A 型であることを知っています
LINQ を使用して簡単に実行できます。
using System.Linq;
(...)
List<A> foo = GetFooList(); // gets data
List<A> fooBorItems = foo.Where(a = > a.FName == "foobar").ToList();
または、構文ベースのクエリを使用します。
List<A> fooBorItems = (from a in foo
where a.FName == "foobar"
select a).ToList();
最初に拡張メソッドList<object>
を使用します。Cast<T>
すべてのソース コレクション要素をキャストしますA
(不可能な場合は例外をスローします)。
List<A> fooBorItems = foo.Cast<A>().Where(a = > a.FName == "foobar").ToList();
またはOfType<A>
(キャストできない要素を例外なく、キャストできる要素のみを返します):
List<A> fooBorItems = foo.OfType<A>().Where(a = > a.FName == "foobar").ToList();