拆分列表并将内容存储在另一个数组中

时间:2015-06-28 14:26:29

标签: c#

我从客户端收到以下字符串列表。它本质上是动态的,并且比下面显示的元素少。

0: "5146d57a-701d-e511-82ee-303a64efb676_6544d57a-701d-e511-82ee-303a64efb676"

1: "5146d57a-701d-e511-82ee-303a64efb676_6644d57a-701d-e511-82ee-303a64efb676"

我的下一步,就是在 array之前创建一个push unique strings'_'**,以显示**之后的每个唯一字符串'_'

因此,对于上述数据,我应该有两个数组。第一个数组应包含'5146d57a-701d-e511-82ee-303a64efb676_6544d57a'和第二个数组'5146d57a-701d-e511-82ee-303a64efb676_6544d57a'

我的尝试:(我正在尝试以下方式实际上远离正确的实施。)

int entityCount = model.Ids.Select(line => line.Split('_').Last()).Distinct().Count();
for (var i = 0; i < entityCount; i++) {
    string entityId = model.Ids.Select(line => line.Split('_').Last()).Distinct().FirstOrDefault();
    List<string> tstIds = model.Ids.Select(line => line.Split('_').First()).Distinct().ToList();
}

请帮我解决。

1 个答案:

答案 0 :(得分:1)

也许是这样的:

var entities = model.Ids.Select(line => line.Split('_').Last()).Distinct().ToList();
foreach(var entity in entities) {
    string entityId = entity;
    List<string> tstIds = new List<string>{entityId};
}

获取所有不同的值,然后将它们添加到列表中。