1

添付ファイル付きの電子メールを送信する必要があるプロジェクトに取り組んでいます。メールの送信はできたのですが、エクセルファイルの添付の仕方がわかりません。

誰かが私を正しい方向に向けることができますか? これまでの私のコードは次のとおりです。

private void sendmail(string Tomailid, string name)
{
    MailMessage mail = new MailMessage();
    mail.From = new MailAddress("ehsimsemail@gmail.com");
    mail.To.Add(Tomailid);
    mail.Subject = "Test Mail";

    StringBuilder sb = new StringBuilder();

    sb.Append("Dear ");
    sb.Append(string.Format("{0} ", name));
    //sb.Append("Yuvaraj");
    sb.Append(Environment.NewLine);
    sb.Append(Environment.NewLine);
    sb.Append("UCR No : ");
    sb.Append("3256987");
    sb.Append(" ");
    sb.Append("HAS BEEN SENT FOR YOUR REVIEW AND APPROVAL");
    sb.Append(Environment.NewLine);
    sb.Append(Environment.NewLine);
    sb.Append("For action, Please click Here");
    sb.Append(Environment.NewLine);
    sb.Append("This is a automatic generated report from Advanced Incident Management System (EHS-IMS). Please do not reply to this mail.");
    sb.Append(Environment.NewLine);
    sb.Append(Environment.NewLine);
    sb.Append("Thanks & Regards,");
    sb.Append(Environment.NewLine);
    sb.Append("EHSIMS TEAM");      


    mail.Body = sb.ToString();
    SmtpClient SmtpServer = new SmtpClient();
    SmtpServer.Host = "smtp.gmail.com";
    SmtpServer.Port = 587;

    SmtpServer.EnableSsl = true;
    SmtpServer.Credentials = new System.Net.NetworkCredential("ehsimsemail@gmail.com", "ehsims123");

    SmtpServer.Send(mail);
}
4

3 に答える 3

1

それはとても簡単です。インターネット上で入手可能な非常に多くの資料。

このリンクを見てください: http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.attachments.aspx

ショートコード :

Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
// Add time stamp information for the file.
ContentDisposition disposition = data.ContentDisposition;
disposition.CreationDate = System.IO.File.GetCreationTime(file);
disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
// Add the file attachment to this e-mail message.
message.Attachments.Add(data);
于 2013-07-07T08:11:35.133 に答える
0
 protected void btnSendMail_Click(object sender, EventArgs e)
        {
            string to = "reciever@gmail.com";
            string from = "frommail@gmail.com";
            string subject = "Mail Subject";
            string body = "Mail Message";
            MailMessage msgObj = new MailMessage();
            msgObj.To.Add(to);
            msgObj.Subject = subject;
            msgObj.Body = body;
            msgObj.IsBodyHtml = true;
            msgObj.Attachments.Add(new Attachment(@"D:\sample.xlx"));
            MailAddress objMail = new MailAddress(from, "emailCampaign", System.Text.Encoding.UTF8);
            msgObj.From = objMail;
            SmtpClient smtp = new SmtpClient();
            smtp.Port = 587;
            smtp.Host = "smtp.gmail.com";
            smtp.Credentials = new System.Net.NetworkCredential(from, "password");
            smtp.EnableSsl = true;
            smtp.Send(msgObj);
        }
于 2013-07-07T08:14:28.083 に答える
0

メッセージにファイルを添付する必要があります。

mail.Attachments.Add(New Attachment(pathToExcelFile))

どこpathToExcelFileに送信したいファイルへのファイルパスです。

ファイルへのアクセス権があることを確認してください。

詳細については、次を参照してください: http://msdn.microsoft.com/en-us/library/system.net.mail.attachment.aspx

于 2013-07-07T08:11:00.990 に答える