zoukankan      html  css  js  c++  java
  • .NET中通過OUTLOOK發送附件內容

    最近碰到一個發送郵件附件的問題,隨便幾下來,方便以後學習。 

         string[] files = System.IO.Directory.GetFiles(@"~/UploadData" + "/" + DateTime.Now.ToString("yyyyMM"));  //獲取文件路徑 
                    foreach (string file in files)  //循環文件夾裏面文件個個數
                    {
                        //string extension = System.IO.Path.GetExtension(file); 文件擴展名
                          var attachmentMail = new System.Net.Mail.Attachment(@file);   
                          message.Attachments.Add(attachmentMail);
                    }

                smtp.Send(message);   //發送郵件
                    ret.success = true;
                    ret.message = "发送成功";

    CODE:

       /// <summary>
            /// 发送邮件
            /// </summary>
            /// <param name="subject">邮件标题</param>
            /// <param name="body">内容</param>
            /// <param name="tos">接收者 格式 test@test.com 或 姓名:test@test.com</param>
            /// <param name="ccs">抄送者 格式 test@test.com 或 姓名:test@test.com</param>
            /// <param name="bccs">密送者 格式 test@test.com 或 姓名:test@test.com</param>
            /// <returns></returns>
            public static OA.Common.Result SendMail(string subject, string body, string[] tos, string[] ccs, string[] bccs)
            {
                OA.Common.Result ret = new OA.Common.Result();
               /* try
                {*/
                    var config = new SystemConfig().LoadConfig().Mail;
                    System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(config.SMTPServer, config.SMTPPort);
                    smtp.UseDefaultCredentials = false;
                    smtp.Credentials = new System.Net.NetworkCredential(config.UserName, config.Password);
                    smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
    
                    System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
                    message.BodyEncoding = System.Text.Encoding.UTF8;
                    message.SubjectEncoding = System.Text.Encoding.UTF8;
                    message.IsBodyHtml = true;
                    message.From = new System.Net.Mail.MailAddress(config.From, config.NickName);
                    message.Subject = subject;
                    message.Body = body;
                    foreach (var to in tos)
                    {
                        var tt = to.Split(':');
                        if (tt.Length > 1)
                        {
                            message.To.Add(new System.Net.Mail.MailAddress(tt[1], tt[0]));
                        }
                        else
                        {
                            message.To.Add(tt[0]);
                        }
                    }
                    if (ccs != null)
                    {
                        foreach (var to in ccs)
                        {
                            var tt = to.Split(':');
                            if (tt.Length > 1)
                            {
                                message.CC.Add(new System.Net.Mail.MailAddress(tt[1], tt[0]));
                            }
                            else
                            {
                                message.CC.Add(tt[0]);
                            }
                        }
                    }
                    if (bccs != null)
                    {
                        foreach (var to in bccs)
                        {
                            var tt = to.Split(':');
                            if (tt.Length > 1)
                            {
                                message.Bcc.Add(new System.Net.Mail.MailAddress(tt[1], tt[0]));
                            }
                            else
                            {
                                message.Bcc.Add(tt[0]);
                            }
                        }
                    }
                   
                    //--发送邮件附件--
                    string[] files = System.IO.Directory.GetFiles(@"~/UploadData" + "/" + DateTime.Now.ToString("yyyyMM"));
                    foreach (string file in files)
                    {
                        //string extension = System.IO.Path.GetExtension(file);
                          var attachmentMail = new System.Net.Mail.Attachment(@file);
                          message.Attachments.Add(attachmentMail);
                    }
                   //--the end-- 
                   
                    smtp.Send(message);
                    ret.success = true;
                    ret.message = "发送成功";
                    /*
                }
                catch(Exception e)
                {
                    throw e;
                    ret.success = false;
                    ret.message = e.Message;
                }*/
                return ret;
            }
    
  • 相关阅读:
    C# 图片与Base64的相互转化
    LeetCode 303. Range Sum Query – Immutable
    LeetCode 300. Longest Increasing Subsequence
    LeetCode 292. Nim Game
    LeetCode 283. Move Zeroes
    LeetCode 279. Perfect Squares
    LeetCode 268. Missing Number
    LeetCode 264. Ugly Number II
    LeetCode 258. Add Digits
    LeetCode 257. Binary Tree Paths
  • 原文地址:https://www.cnblogs.com/Annayang/p/3548298.html
Copyright © 2011-2022 走看看