Send Email

 private string SendEmail(string mailTo, string body, ref int sendresult)
        {
            string errorEmailAddress = ""; 
            SmtpClient smtp = new SmtpClient(_SmtpServer);
            try
            {

                MailMessage message = new MailMessage();
                message.Priority = MailPriority.High;
                message.From = new MailAddress(_From);
                //message.To.Add(mailTo);
                message.Subject = _Subject;
                message.Body = body;
                message.IsBodyHtml = true;
                message.Bcc.Add(new MailAddress(_Bcc, "", Encoding.Default));
                SetToMailAddress(mailTo, message, ref errorEmailAddress);
                if (message.To.Count > 0)
                {
                    smtp.Send(message);
                    sendresult = 1;
                } 
                smtp.Dispose();
                return string.IsNullOrEmpty(errorEmailAddress) ? string.Empty : ("Error email address:"+errorEmailAddress);
            }
            catch (Exception e)
            {
                smtp.Dispose(); 
                return e.InnerException.Message + (string.IsNullOrEmpty(errorEmailAddress) ? "" : (" Error email address: " + errorEmailAddress)); 
            }
        }
        private static void SetToMailAddress(string toMailAddress, MailMessage message, ref string errorEmailAddress)
        {
            string[] addes = toMailAddress.Split(';').ToArray();
            foreach (string s in addes)
            {
                if (Regex.IsMatch(s, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"))
                {
                    message.To.Add(new MailAddress(s.Trim(), "", Encoding.Default));
                }
                else
                { errorEmailAddress += s + ";"; }
            }
        } 

 

转载于:https://www.cnblogs.com/muxueyuan/p/6868271.html

当你尝试通过Git发送电子邮件通知提交时遇到"Error: need EHLO and AUTH first !"错误,这通常表示邮件客户端在尝试连接到邮件服务器时遇到了身份验证问题。EHLO(Extended Hello)是一个SMTP(简单邮件传输协议)命令,用于向邮件服务器自我介绍并询问支持的功能。而AUTH则是授权认证,可能是SMTP的STARTTLS加密或者更严格的用户名和密码验证。 解决这个问题一般需要以下几个步骤: 1. 确保你的系统设置了正确的SMTP服务器地址和端口。你可以检查你的git配置文件(`~/.gitconfig`)中的`[sendemail]`部分,确认`smtpserver`, `smtpport`等设置是否正确。 2. 检查邮箱服务是否允许从非默认的应用程序发送邮件。有些邮箱服务商会限制哪些应用程序可以访问它们的SMTP服务器。 3. 更新git的邮件发送配置。如果是首次使用,可能会提示添加一个身份验证方法。运行命令`git config --global --edit`打开编辑器,找到 `[sendemail]` 部分,在下面添加类似这样的内容: ``` identity = user@example.com (Your Name) smtpuser = your_username smtppassword = your_password smtpserver = smtp.example.com smtpport = 587 usestarttls = true ``` 将上述示例中的`your_username`、`your_password`替换为实际的邮件账户信息。 4. 完成配置后,退出编辑器并保存。之后再尝试运行`git send-email`应该能正常工作了。 如果以上操作仍然无效,建议联系邮件服务提供商获取更多帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值