mail.ReplyTo = новый MailAddress ("[email protected]");
ользую простой класс отправителя почты, который используетSystem.Net.Mail
, Мне нужно обновить свое приложение, чтобы различные пользователи могли отправлять по нему электронную почту (используя одну и ту же учетную запись smtp), но адрес «От» должен принадлежать пользователю, который его отправляет. Я пытался установитьFrom
собственностьюMailMessage
и отправив адрес от в конструкторMailMessage
но нос тех работал. Я уверен, что упускаю что-то простое или не понимаю, как работает почтовый API. Кто-нибудь может помочь?
Здесь мой класс MailSender, который в основном оборачиваетMailMessage
, NetworkCredential
а такжеSmtpClient
обеспечить один простой интерфейс отправки почты.
class MailSender
{
private NetworkCredential credential;
private String SenderAddress;
private SmtpClient client;
public MailSender(String ServerURL, String account, String password, String FromAddress = null, int port = -1, bool UseSSL = true)
{
if (port > 0)
{
client = new SmtpClient(ServerURL, port);
}
else
{
client = new SmtpClient(ServerURL);
}
credential = new NetworkCredential(account, password);
client.UseDefaultCredentials = false;
client.EnableSsl = UseSSL;
client.Credentials = credential;
if (FromAddress != null)
{
SenderAddress = FromAddress;
}
else
{
SenderAddress = account;
}
}
public bool SendMessage(String to, String subject, String body)
{
try
{
MailMessage message = new MailMessage(SenderAddress, to, subject, body);
message.From = new MailAddress(SenderAddress, "tester");
message.IsBodyHtml = true;
client.Send(message);
}
catch
{
return false;
}
return true;
}
}