2011-01-31 5 views
1
私は配列としてコレクションからすべての単一のプロパティを取得したい

一般的なオブジェクトのリストからすべてのプロパティ値を取得するにはどうすればよいですか?

class Foo{ 
    public string Bar { get; set; } 
    public string Baz { get; set;} 
} 

私はコレクション

var list = new List<Foo>(); 

string[] allBars = list. .... 

から、すなわち、すべてのバーのプロパティを取得したいとどのようにそれが上に行くん?

ありがとうございました。

答えて

10

あなたは使用することができます。

string[] allBars = list.Select(foo => foo.Bar).ToArray(); 

あなたは具体的には、配列にする必要があれば、私は唯一の配列にこれを変換します。あなたの目標は、単に出力に「バー」リストであれば、あなただけ行うことができます:

var allBars = list.Select(foo => foo.Bar); // Will produce IEnumerable<string> 
foreach(var bar in allBars) 
{ 
    // Do something with bar 
} 
+0

はそれを私にビート。 Linqは、これらの種類のリスト変換を簡単かつ苦にするように特別に設計されました。 – KeithS

+0

このヒントをありがとう。ニースとシンプル。 OracleCommand(ODP.NET)の配列へのバインドに使用します。 – MacX

0
var query = from foo element in foo_bar_list 
         where foo.Bar == "" 
         select new 
         { 
          class1.Baz 
         }; 
関連する問題