从对象属性

时间:2017-11-06 15:07:18

标签: c# linq

我有一个对象列表,该对象的一个​​属性是字符串。

有没有办法使用Join和Linq在一行代码中创建字符串属性的分隔列表?如果没有,那么实现此目的的代码量最少?

实施例

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

我想使用Join创建一个字符串,其中包含MyString中所有MyObject值的分隔列表。

像这样 -

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将被设置为myObjectList中所有对象的MyString值的分隔列表

1 个答案:

答案 0 :(得分:1)

您希望使用如下所示的linq语句替换使用ForEach的位置:

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

请参阅MSDN guide for linq