Хорошо, я только что попытался выдать сообщение.Dispose (), и даже это выдало ошибку, сказав, что не может отправить электронное письмо из-за удаления сообщения. Возможно, потому что мое приложение asp.net mvc, а пример - консольное приложение. В любом случае сборщик мусора должен подобрать эти опции, как только все выйдет за рамки ...
я использую SendAsync SmtpClient для отправки электронной почты, как я могуsmtpclient
пример правильно?
Скажем так:
MailMessage mail = new System.Net.Mail.MailMessage()
{
Body = MailBody.ToString(),
IsBodyHtml = true,
From = new MailAddress(FromEmail, FromEmailTitle),
Subject = MailSubject
};
mail.To.Add(new MailAddress(i.Email, ""));
SmtpClient sc = new SmtpClient(SmtpServerAddress);
//Add SendAsyncCallback to SendCompleted
sc.SendCompleted += new SendCompletedEventHandler(SendAsyncCallback);
//using SmtpClient to make async send (Should I pass sc or mail into SendAsyncCallback?)
sc.SendAsync(mail, sc);
вSendAsyncCallback
метод, я должен позвонитьsc.Dispose()
, или жеmail.Dispose()
?
Я проверил документ MSDN, один пример вызывает MailMessage.Dispose (), но этот метод dispose также удалитSmtpClient
экземпляр?
Большое спасибо.