我有一个 C# 列表,我想创建一个逗号分隔的字符串。我在 SO 上找到了其他解决这个问题的答案,但我的特殊情况是我只想使用 List 中的一部分值来创建字符串。
如果我的列表包含这些值:
“Foo” “酒吧” “汽车”
我想创建一个字符串
Foo, Bar and Car.
我可以使用这段代码:
string.Format("{0} and {1}.",
string.Join(", ", myList.Take(myList.Count - 1)),
myList.Last());
但是,我的列表实际上是由 JSON 值组成的,如下所示
{ Name = "Foo" }
{ Name = "Bar" }
{ Name = "Car" }
所以上面的代码导致:
{ Name = "Foo" }, { Name = "Bar" } and { Name = "Car" }.
我将如何构造字符串以便只使用列表中的Foo
,Bar
和Car
值?
更新
感谢@StevePy,这就是我最终得到的结果:
string.Format("{0} and {1}.",
string.Join(", ", myList.Select(x => x.Name).ToList().Take(myList.Count - 1)),
myList.Select(x => x.Name).ToList().Last());