私は同じことを真っ直ぐにしてからしばらくしていました。私は、 "Send as"という権利にもかかわらず、不可能であると結論づけました。
偽装は、EWSで行くための唯一の方法である、MSDNを参照してください。
ExchangeService service = new ExchangeService();
service.UseDefaultCredentials = true;
service.AutodiscoverUrl("[email protected]");
// impersonate user e.g. by specifying an SMTP address:
service.ImpersonatedUserId = new ImpersonatedUserId(
ConnectingIdType.SmtpAddress, "[email protected]");
偽装が有効になっていない場合、あなたはあなたが行動したい人に代わって、ユーザーの資格情報を提供する必要があります。 this MSDN articleを参照してください。
ExchangeService service = new ExchangeService();
service.Credentials = new NetworkCredential("user", "password", "domain");
service.AutodiscoverUrl("[email protected]");
また、reply-to addressを指定することもできます。
EmailMessage mail = new EmailMessage(service);
mail.ReplyTo.Add("[email protected]");
しかし、ちょうど電子メールを送信する際に、多くの場合、うまくやるだろうSystem.Net.Mailを使用してメールを送信する際にがが適用されない権利「として送信します」。 tons of examplesはhow to do thisを示しています。
// create new e-mail
MailMessage mail = new MailMessage();
mail.From = new MailAddress("[email protected]");
mail.To.Add(new MailAdress("[email protected]"));
message.Subject = "Subject of e-mail";
message.Body = "Content of e-mail";
// send through SMTP server as specified in the config file
SmtpClient client = new SmtpClient();
client.Send(mail);
、このにはセッターがありません。 public EmailAddressCollection ReplyTo {get; } – RobDigital
右のコレクションです。したがって、あなたは 'mail.ReplyTo.Add(" [email protected] ")'を実行する必要があります。 - 上記の例を修正します。 – bernhof
偽装を使用するmail.sendでエラーが発生します。 - メールボックスを参照するときにプライマリSMTPアドレスを指定する必要があります – markthewizard1234