您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> .NET >> 使用net 发邮件,很慢呀,约30秒左右!

使用net 发邮件,很慢呀,约30秒左右!

来源:网络整理     时间:2016/6/28 10:45:56     关键词:

关于网友提出的“ 使用net 发邮件,很慢呀,约30秒左右!”问题疑问,本网通过在网上对“ 使用net 发邮件,很慢呀,约30秒左右!”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 使用net 发邮件,很慢呀,约30秒左右!
描述:

用的是 using System.Net; using System.Net.Mail; 发送邮件的配送信息写在web.config的
/> 你们怎么发的?速度如何?这慢的原因又出在那里??


解决方案1:

    /// 


    /// 邮件实体     /// 
    public struct DawnProMail     {
        private string from;
        ///          /// 发送者邮箱         ///          public string From         {
            get { return from; }             set { from = value; }
        }         private string to;         ///          /// 收件者集合以;分号分隔         ///          public string To
        {
            get { return to; }             set { to = value; }
        }         private string fromDisplayName;         ///          /// 发送者姓名         ///          public string FromDisplayName
        {             get { return fromDisplayName; }             set { fromDisplayName = value; }         }
        private string subject;         ///          /// 邮件标题         ///          public string Subject         {             get { return subject; }             set { subject = value; }         }         private string body;         ///          /// 邮件正文         ///          public string Body         {             get { return body; }             set { body = value; }         }     }

解决方案2:

using System; using System.Collections.Generic; using System.Text;
using System.Net.Mail; namespace DFG.Common
{     /// 


    /// 静态类 提供发送邮件的方法     /// 
    public static class Mail     {         /// 
        /// 发送邮件         /// 
        /// DawnProMail实体         /// 邮件服务器         public static void sendMail(DawnProMail mail,string host)         {             MailAddress fromAddress = new MailAddress(mail.From, mail.FromDisplayName);
            MailMessage msg = new MailMessage();             msg.From = fromAddress;             string[] sendTo = mail.To.Split(';');             foreach (string temp in sendTo)
            {                 if (temp != string.Empty)                 {                     msg.Bcc.Add(temp);
                }             }             msg.IsBodyHtml = true;
            msg.Subject = mail.Subject;
            msg.Body = mail.Body;
/>
            SmtpClient smtpClient = new SmtpClient(host);
            smtpClient.Send(msg);
        }
        ///          /// 发送邮件
        /// 

        /// DawnProMail实体         /// 邮件服务器
        /// 端口         public static void sendMail(DawnProMail mail, string host,int port)
        {             MailAddress fromAddress = new MailAddress(mail.From, mail.FromDisplayName);
            MailMessage msg = new MailMessage();             msg.From = fromAddress;             string[] sendTo = mail.To.Split(';');
            foreach (string temp in sendTo)             {                 if (temp != string.Empty)                 {                     msg.Bcc.Add(temp);                 }             }             msg.IsBodyHtml = true;             msg.Subject = mail.Subject;             msg.Body = mail.Body;             SmtpClient smtpClient = new SmtpClient(host,port);             smtpClient.Send(msg);         }         ///          /// 发送邮件         ///          /// DawnProMail实体         /// 邮件服务器         /// 端口         /// 权限验证所需的用户名         /// 权限验证所需的密码         public static void sendMail(DawnProMail mail, string host, int port, string adminName, string adminPassword)         {             MailAddress fromAddress = new MailAddress(mail.From, mail.FromDisplayName);             MailMessage msg = new MailMessage();             msg.From = fromAddress;             string[] sendTo = mail.To.Split(';');             foreach (string temp in sendTo)             {                 if (temp != string.Empty)                 {                     msg.Bcc.Add(temp);                 }             }             msg.IsBodyHtml = true;             msg.Subject = mail.Subject;             msg.Body = mail.Body;             SmtpClient smtpClient = new SmtpClient(host, port);             smtpClient.Credentials = new System.Net.NetworkCredential(adminName, adminPassword);             smtpClient.Send(msg);         }         ///          /// 发送邮件         ///          /// DawnProMail实体
        /// 邮件服务器         /// 端口         /// 权限验证所需的用户名         /// 权限验证所需的密码         ///          public static void sendMail(DawnProMail mail, string host, int port,string adminName,string adminPassword,string domain)         {             MailAddress fromAddress = new MailAddress(mail.From, mail.FromDisplayName);             MailMessage msg = new MailMessage();             msg.From = fromAddress;             string[] sendTo = mail.To.Split(';');             foreach (string temp in sendTo)             {                 if (temp != string.Empty)                 {                     msg.Bcc.Add(temp);                 }             }             msg.IsBodyHtml = true;
/>             msg.Subject = mail.Subject;             msg.Body = mail.Body;             SmtpClient smtpClient = new SmtpClient(host, port);             smtpClient.Credentials = new System.Net.NetworkCredential(adminName,adminPassword,domain);             smtpClient.Send(msg);         }         ///          /// 发送邮件         ///          /// DawnProMail实体         /// 邮件服务器         /// 权限验证所需的用户名         /// 权限验证所需的密码         public static void sendMail(DawnProMail mail, string host, string adminName, string adminPassword)         {             MailAddress fromAddress = new MailAddress(mail.From, mail.FromDisplayName);             MailMessage msg = new MailMessage();             msg.From = fromAddress;             string[] sendTo = mail.To.Split(';');             foreach (string temp in sendTo)             {                 if (temp != string.Empty)                 {                     msg.Bcc.Add(temp);                 }             }             msg.IsBodyHtml = true;             msg.Subject = mail.Subject;
            msg.Body = mail.Body;             SmtpClient smtpClient = new SmtpClient(host);
            smtpClient.Credentials = new System.Net.NetworkCredential(adminName, adminPassword);             smtpClient.Send(msg);         }         ///          /// 发送邮件         ///          /// DawnProMail实体         /// 邮件服务器         /// 权限验证所需的用户名         /// 权限验证所需的密码         ///          public static void sendMail(DawnProMail mail, string host, string adminName, string adminPassword, string domain)         {             MailAddress fromAddress = new MailAddress(mail.From, mail.FromDisplayName);             MailMessage msg = new MailMessage();             msg.From = fromAddress;             string[] sendTo = mail.To.Split(';');             foreach (string temp in sendTo)             {                 if (temp != string.Empty)                 {                     msg.Bcc.Add(temp);                 }             }             msg.IsBodyHtml = true;             msg.Subject = mail.Subject;
            msg.Body = mail.Body;
            SmtpClient smtpClient = new SmtpClient(host);             smtpClient.Credentials = new System.Net.NetworkCredential(adminName, adminPassword, domain);             smtpClient.Send(msg);         }     } }

解决方案3:

网上一般都有现成的方法,如果慢,请先排除外因,比如你机器本身的问题,你所在的网络的问题,然后检查你的代码有没有异常,查询数据库得到数据是否有问题等等。。


以上介绍了“ 使用net 发邮件,很慢呀,约30秒左右!”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2127389.html

相关图片

相关文章