2017-11-06 5 views
0

オブジェクトのリストがあります。オブジェクトのプロパティの1つは文字列です。オブジェクトのプロパティのリストから区切りリストを作成します。

Joinを使用する方法はありますか?Linqは、1行のコードで文字列プロパティの区切りリストを作成しますか?そうでない場合は、これを達成するための最小限のコードは何ですか?

例:

public class MyObject 
{ 
    public int MyInt { get; set; } 
    public string MyString { get; set; } 
} 

は私がMyObject内のすべてのMyString値の区切りのリストが含まれていJoinを使用して文字列を作成します。このような

何か -

List<MyObject> myObjectList = GetMyObjectList(); //Contains a list of MyObject 

//I want to do something like this 
string MyListOfMyStrings = String.Join(",", myObjectList.ForEach(x => x.Mystring)); 

MyListOfMyStringsは、あなたがあなたとのForEachを使用している場所を交換したいmyObjectList

+3

'ForEach'ではなく' Select'でなければなりませんか? –

+0

リスト[を値としてクラスのIdプロパティを使用してコンマ区切りのリストに変換する方法]の複製可能性](https://stackoverflow.com/questions/7588811/how-to-convert-a-listt-コンマ区切りリストを使用してクラスIDを使用する) –

+0

try:string MyListOfMyStrings = String.Join( "、"、myObjectList.Select(x => x.Mystring)); – jdweng

答えて

1

内のすべてのオブジェクトのためのMyStringの値の区切りのリストに設定されます。以下のようなLINQ声明:

string MyListOfMyStrings = String.Join(",", (from myObject in myObjectList select myObject.MyString).ToArray()); 

MSDN guide for linq

を参照してください。
関連する問題