C# System.Net.Mail.MailAddress不允许Gmail组联系

C# System.Net.Mail.MailAddress不允许Gmail组联系,c#,gmail,sendmail,system.net.mail,C#,Gmail,Sendmail,System.net.mail,我使用的是Gmail商业账户,比如noreply@mycompany.com向几个电子邮件地址来自不同域的客户发送每日电子邮件报告。我使用C#将电子邮件发送到Gmail的SMTP服务器 var receiver = new MailAddress("receiver@domain1.com"); var receiver = new MailAddress("receiver@domain2.com"); var receiver = new MailAddress("receiver@doma

我使用的是Gmail商业账户,比如
noreply@mycompany.com
向几个电子邮件地址来自不同域的客户发送每日电子邮件报告。我使用C#将电子邮件发送到Gmail的SMTP服务器

var receiver = new MailAddress("receiver@domain1.com");
var receiver = new MailAddress("receiver@domain2.com");
var receiver = new MailAddress("receiver@domain3.com");
过了一会儿,我发现每当新客户要求电子邮件报告时,我都必须修改代码。所以我想组成一个小组并维持这个小组。Gmail在你帐户的“联系人”页面上有一个添加组设置,所以我用它创建了一个名为ReportGroup的组,并添加了这些人。在代码中,这行抛出异常:

var receiver = new MailAddress("ReportGroup");
指定的字符串不是电子邮件地址所需的格式。

显然这不是一个合法的电子邮件地址。有没有办法绕过这种格式检查?还是这样做没有意义

在进一步的尝试中,我尝试将我的组命名为
reportgroup@mycompany.com
。这一次邮件发送时没有抱怨,但是gmail服务器拒绝了收件人,声称

50-5.1.1 The email account that you tried to reach does not exist. Please try
550-5.1.1 double-checking the recipient's email address for typos or
550-5.1.1 unnecessary spaces. Learn more at
550 5.1.1  https://support.google.com/mail/answer/6596 ai2si23882633pad.98 - gsmtp

所以这也不是一条路。有谁能为我建议一个解决方案,允许非程序员维护一个接收者列表,我的代码将报告发送到该列表?

为您的组创建一个接收者列表,然后向该地址发送电子邮件。然后,您可以像往常一样继续维护该组。

为您的组创建一个新的地址,然后向该地址发送电子邮件。然后,您可以像往常一样继续维护该组。

嗨,斯科特,请注意,我的客户在不同的域中,而不是在
mycompany.com
下。我无法将它们作为一个组添加。我能管理的唯一这样的组是为
noreply@mycompany.com
user。所以我无法为他们创建别名。在这种情况下,你将不得不发送多封电子邮件,每个用户一封。您可以使用Google的API检索组中的电子邮件地址列表,然后分别向他们发送消息。这样,非开发人员仍然可以维护组。嗨,斯科特,请注意,我的客户在不同的域中,而不是在
mycompany.com
下。我无法将它们作为一个组添加。我能管理的唯一这样的组是为
noreply@mycompany.com
user。所以我无法为他们创建别名。在这种情况下,你将不得不发送多封电子邮件,每个用户一封。您可以使用Google的API检索组中的电子邮件地址列表,然后分别向他们发送消息。这样,非开发人员仍然可以维护组。