使用string.Join()来避免使用尾随逗号

时间:2016-12-06 16:56:06

标签: c# string

我试图将一个电子邮件地址列表放在一个字符串中,如下所示:

string bcc = string.empty
foreach (contact as Contact in contacts)
{
    bcc = bcc + contact.Email + ","
}

该方法的问题是最终字符串有一个尾随逗号。没什么大不了的,但是我想避免它,只是为了整洁。所以,我试过这个:

bcc = bcc.Join(",", contact.Email);

但这会引发错误:

  

会员' string.Join(string,params string [])'无法使用实例引用访问;使用类型名称来限定它

所以,我试过这个:

bcc = String.Join(",", contact.Email);

但是每次只清除bcc,我最终得到的就是最后一个电子邮件地址。所以,我试过这个:

bcc = bcc + string.Join(",", contact.Email);

但这让我得到了一长串未分隔的电子邮件,没有逗号分隔。

我确定当我看到解决方案时,我会砸到我的前额。但是我没有理解它。

1 个答案:

答案 0 :(得分:5)

这是您应该使用的:

// using System.Linq;
bcc = string.Join(",", contacts.Select(c => c.Email));

然后你不再需要foreach了,Linq为你做了。