通过逗号分隔将listItems分配给单个字符串

问题描述 投票:0回答:2

我有一个listItems,我想分配给一个字符串。所以我尝试如下

for (int i = 0; i < LocationDetails.Count; i++)
{
    strMaintZone = String.Join(",", LocationDetails[i].LocationID);
}

但它没有被分配,它需要最后一个值。如何将值分配给字符串。

c# asp.net join listitem
2个回答
2
投票

LINQ在这里很有帮助。你应该将IEnumerable<string>传递给string.Join方法。 IEnumerable<string>可以由LINQ Select条款制作。

strMaintZone = string.Join(",", LocationDetails.Select(item => item.LocationID));

在你的例子中,问题是你每次都覆盖strMaintZone的值,结果你只有最后一个元素。


2
投票

你不需要遍历你的列表。只需将集合传递给String.Join的第二个参数,如下所示:

  strMaintZone = String.Join(",", LocationDetails.Select(x=>x.LocationID));

LocationDetails.Select(x => x.LocationID)返回LocationIDs(“1”,“2”..)的集合,该集合传递给String.Join()第二个参数。

© www.soinside.com 2019 - 2024. All rights reserved.