-3

私はSmtpClient、はMailMessage、およびMailAddressオブジェクトを使用して簡単な電子メールを送信し、このコードを持っている:添付ファイルをMailMessageに追加するにはどうしたらいいですか?

private void EmailMessage(string msg) 
{ 
    string TO_EMAIL = "[email protected]"; 
    var windowsIdentity = System.Security.Principal.WindowsIdentity.GetCurrent(); 
    string userName = windowsIdentity.Name; 
    string subject = string.Format("Log msg from Report Runner app sent {0}; user was {1}", DateTime.Now.ToLongDateString(), userName); 
    string body = msg; 

    var SmtpServer = new SmtpClient(ReportRunnerConstsAndUtils.EMAIL_SERVER); 
    var SendMe = new MailMessage(); 
    SendMe.To.Add(TO_EMAIL); 
    SendMe.Subject = subject; 
    SendMe.From = new MailAddress(ReportRunnerConstsAndUtils.FROM_EMAIL); 
    SendMe.Body = body; 
    try 
    { 
     SmtpServer.UseDefaultCredentials = true; 
     SmtpServer.Send(SendMe); 
    } 
} 

を私はまた、電子メールにファイルを添付するために、しかし、必要があります。私はOutlookのようにOutlookを使っていました。

Application app = new Application(); 
MailItem mailItem = app.CreateItem(OlItemType.olMailItem); 
. . . 
FileInfo[] rptsToEmail = GetLastReportsGenerated(); 
foreach (var file in rptsToEmail) 
{ 
    String fullFilename = String.Format("{0}\\{1}", uniqueFolder, file.Name); 
    if (!file.Name.Contains(PROCESSED_FILE_APPENDAGE)) 
    { 
     mailItem.Attachments.Add(fullFilename); 
    } 
} 
mailItem.Importance = OlImportance.olImportanceNormal; 
mailItem.Display(false); 

...しかし、私はこれをOutlookから外す必要があります。ここでMailItemはMicrosoft.Office.Interop.Outlook.MailItemです

私は今すぐ使用する必要がある簡単なMailMessageで添付ファイルを追加する方法はありますか?

重要度を設定することはあまり重要ではないと私は考えていませんが、DisplayはMailMessageにも設定する必要があります。

答えて

-3

簡単:

if (!file.Name.Contains(PROCESSED_FILE_APPENDAGE)) 
{ 
    var attachment = new Attachment(fullFilename); 
    mailMsg.Attachments.Add(attachment); 
} 
mailMsg.Priority = MailPriority.Normal; 
関連する問題