如何向 MailMessage 添加附件?

How can I add an attachment to a MailMessage?

我得到了使用 SmtpClient、MailMessage 和 MailAddress 对象发送简单电子邮件的代码:

private void EmailMessage(string msg)
{
    string TO_EMAIL = "cshannon@proactusa.com";
    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 的:

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 中添加附件?

我认为设置重要性不是太重要,但显示也是我需要为 MailMessage 设置的东西。

简单:

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