这是我第一次使用c#发送电子邮件。到目前为止,我从阅读和观看视频中得到的一切。我目前编写的代码用于发送电子邮件。它创建它并显示电子邮件,其中包含所有正确且准备发送的信息。电子邮件打开,然后我点击发送它的工作原理。问题是我希望电子邮件自己发送,而不必单击发送。
这是我的代码:
static void SendEmail()
{
Microsoft.Office.Interop.Outlook.Application app = new
Microsoft.Office.Interop.Outlook.Application();
Microsoft.Office.Interop.Outlook.MailItem mailItem = app.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem) as Outlook.MailItem;
mailItem.Subject = "Status of Code";
mailItem.To = "bt@outlook.com";
mailItem.Body = "Code Ran Successfully";
mailItem.Importance = Outlook.OlImportance.olImportanceHigh;
mailItem.Display(false);
}
我尝试添加
mailItem.Send;
但我一直收到错误。我怎么能这样做?
答案 0 :(得分:0)
引用微软文档(https://msdn.microsoft.com/en-us/library/swas0fwc(v=vs.110).aspx),我建议改为使用SMTP客户端(而不是特定于Outlook)。
您的代码将类似于:
public static void SendEmail()
{
string to = "bt@outlook.com";
string from = "fromAddress@outlook.com";
MailMessage message = new MailMessage(from, to);
message.Subject = "Using the new SMTP client.";
message.Body = @"Code Ran Successfully";
SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = true;
try {
client.Send(message);
}
catch (Exception ex) {
Console.WriteLine("Exception caught in SendEmail(): {0}",
ex.ToString() );
}
}