我试图将一个电子邮件地址列表放在一个字符串中,如下所示:
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);
但这让我得到了一长串未分隔的电子邮件,没有逗号分隔。
我确定当我看到解决方案时,我会砸到我的前额。但是我没有理解它。
答案 0 :(得分:5)
这是您应该使用的:
// using System.Linq;
bcc = string.Join(",", contacts.Select(c => c.Email));
然后你不再需要foreach了,Linq为你做了。