拆分字符串属性并与其他属性链接

时间:2014-11-13 12:35:28

标签: c# linq

我有一个包含2个属性的对象列表。其中一个属性是字符串,另一个是包含逗号分隔列表的字符串。我想要一个包含所有部分的拆分列表,并将其与其他属性相关联。

我有......

objectA
{
   string propertyX
   string propertyY e.g. "part1,part2,part3"
}

List<objectA> objectAs

来自于对象我想要一个包含...

的集合
{propertyX1, propertyY[0]1 eg. "part1"},
{propertyX1, propertyY[1]1},
{propertyX2, propertyY[0]2}

等。

1 个答案:

答案 0 :(得分:0)

您可以使用您的班级ObjectA来存储这两个属性,并使用SelectMany来展平它们:

List<ObjectA> flattenedList = objectAs
 .SelectMany(obj => obj.propertyY.Split(',')
    .Select(propY => new ObjectA { 
        propertyX = obj.propertyX ,
        propertyY = propY
})).ToList(); 

但我首先会用逗号存储它; - )