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;
            }
    
  • 相关阅读:
    java中如何创建带路径的文件
    Java 判断文件夹、文件是否存在、否则创建文件夹
    Risk Adaptive Information Flow Based Access Control
    13-回顾
    Activiti操作数据库中文乱码
    12-执行流程(启动流程实例、查询任务列表、办理任务)
    11-查询流程定义列表
    eclipse-jee-mars-2-win32-x86_64安装activiti
    myeclipse10安装了activiti插件后创建BPMN 文件时报错,
    10-部署流程定义
  • 原文地址:https://www.cnblogs.com/Annayang/p/3548298.html
Copyright © 2011-2022 走看看