我需要使用c#向一个名为“DL-IT”的Exchange分发列表发送电子邮件。 有人知道如何实现吗?
最简单的方法是找到实际的邮件地址,并在“收件人”字段中使用该地址。Exchange发行列表实际上有自己的电子邮件地址,因此这应该可以很好地工作。
public void Send(string server, string from, string to)
{
// Client to Exchange server
SmtpClient client = new SmtpClient(server);
// Message
MailMessage message = new MailMessage(from, to);
message.Body = "This is a test e-mail message sent by an application. ";
message.Subject = "test message 1";
// Credentials are necessary if the server requires the client
// to authenticate before it will send e-mail on the client's behalf.
client.Credentials = CredentialCache.DefaultNetworkCredentials;
// Send
client.Send(message);
}
基本上,你需要将上述两个解决方案结合起来。
使用Scott的代码片段 - 你应该发送到DL-IT@mycompany.com
。
但是,交换名称别名并不总是与组电子邮件相同,因此
To
字段中输入DL-IT
To
字段中的DL-IT
Alias Name
字段中的值并添加@mycompany.com
。以上的答案都很好,只是要注意,如果分发列表中的某个成员不是有效地址,则SMTP服务器可能会拒绝整个电子邮件消息,因为无法投递。
这可能是因为在我们的情况下,我们正在使用一个不属于Exchange的SMTP服务器,但仍然需要注意这一点。