System.Net.Mail.MailAddress 使用一个参数发送到多个电子邮件
System.Net.Mail.MailAddress send to multiple emails with one parameter
我刚刚从弃用的 System.Web.Mail.MailAddress
切换到 System.Net.Mail.MailAddress
,但在使用新的 [=14] 时传入包含多个地址的参数时似乎不是特别灵活=].
string emailAdd= "email1@emailus.com; email2@emailus.com";
System.Net.Mail.MailAddress.To.Add(emailAdd);
在上面的示例中,email2@emailus.com
已成功通过电子邮件发送,但 email1@emailus.com
没有。我真的需要一种方法来执行此操作,因为我的地址是在另一个 class 中定义的,并通过参数传递给 email()
方法。我只是没有为 5 封单独的电子邮件传递五个参数。或者实际上是一个拼接,.Web
版本被证明更加通用。
这个问题不是建议的问题的重复。 “重复”的答案是单独添加它们,我想同时添加多个地址。既然有办法做到这一点,这个问题比我被指责重复的问题更相关。
根据 MSDN,.Add()
方法接受一串 逗号分隔 地址,而不是分号分隔。
因此,如果可能,将您传递的参数更改为以逗号分隔的字符串,或者向您的电子邮件方法添加功能以将分号替换为逗号应该可以解决问题。
为此,您可以遵循它实际表示的函数参数,它表明您可以使用逗号分隔符,函数参数表示为地址,表示您可以使用它一起发送多封电子邮件
mail.To.Add("to1mailaddress@domain,to2mailaddress@domain");
我刚刚从弃用的 System.Web.Mail.MailAddress
切换到 System.Net.Mail.MailAddress
,但在使用新的 [=14] 时传入包含多个地址的参数时似乎不是特别灵活=].
string emailAdd= "email1@emailus.com; email2@emailus.com";
System.Net.Mail.MailAddress.To.Add(emailAdd);
在上面的示例中,email2@emailus.com
已成功通过电子邮件发送,但 email1@emailus.com
没有。我真的需要一种方法来执行此操作,因为我的地址是在另一个 class 中定义的,并通过参数传递给 email()
方法。我只是没有为 5 封单独的电子邮件传递五个参数。或者实际上是一个拼接,.Web
版本被证明更加通用。
这个问题不是建议的问题的重复。 “重复”的答案是单独添加它们,我想同时添加多个地址。既然有办法做到这一点,这个问题比我被指责重复的问题更相关。
根据 MSDN,.Add()
方法接受一串 逗号分隔 地址,而不是分号分隔。
因此,如果可能,将您传递的参数更改为以逗号分隔的字符串,或者向您的电子邮件方法添加功能以将分号替换为逗号应该可以解决问题。
为此,您可以遵循它实际表示的函数参数,它表明您可以使用逗号分隔符,函数参数表示为地址,表示您可以使用它一起发送多封电子邮件
mail.To.Add("to1mailaddress@domain,to2mailaddress@domain");