2016-06-02 5 views
-1

Это мой первый опыт отправки электронной почты с использованием C#. Все, что у меня есть, я получил от чтения и просмотра видео. В настоящее время у меня есть код, написанный для отправки электронной почты. Он создает его и отображает электронное письмо со всей информацией, правильной и готовой к отправке. Электронная почта открывается, а затем я нажимаю кнопку «Отправить», и она работает. Проблема в том, что я хочу, чтобы электронная почта отправлялась сама по себе, без необходимости нажимать кнопку «Отправить».Отправка электронной почты автоматически с использованием 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 = "[email protected]"; 
    mailItem.Body = "Code Ran Successfully"; 
    mailItem.Importance = Outlook.OlImportance.olImportanceHigh; 
    mailItem.Display(false); 
} 

Я попробовал, добавив в

mailItem.Send; 

, но я продолжал получать ошибку. Как еще я это сделаю?

+0

Что такое ошибка? – StingyJack

+0

Ошибка CS0201: \t Только назначение, вызов, приращение, декремент и новые выражения объекта могут использоваться как оператор –

+0

'Send()' является методом. – CodeCaster

ответ

0

Ссылка на документацию Microsoft (https://msdn.microsoft.com/en-us/library/swas0fwc(v=vs.110).aspx), я бы рекомендовал вместо этого использовать SMTP-клиент (в отличие от специфики внешнего вида).

Ваш код будет выглядеть примерно так:

public static void SendEmail() 
{ 
    string to = "[email protected]"; 
    string from = "[email protected]"; 
    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());    
    }    
} 
+0

Благодарим за помощь –

+0

Добро пожаловать, удачи! –

Смежные вопросы