我有一个C#列表,我想创建一个逗号分隔字符串。我已经找到了解决这个问题的其他答案,但是我的具体情况是我只想使用列表中的一部分值来创建字符串。从C#列表中的字符串部分创建逗号分隔的字符串
如果我的列表中包含这些值:
“富” “酒吧” “汽车”
,我想创建一个字符串
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());
是您的列表中列出和每个字符串的类型为“{名称=‘富’}”? –
ryadavilli
那么你需要什么样的实际输出?你会包括'和'到你的JSON响应? – Ulises
你可能想看看这个:http://stackoverflow.com/questions/5409890/formatting-a-string-using-values-from-a-generic-list-by-linq –