///<summary> /// 添加附件 ///</summary> ///<param name="attachmentsPath">附件的路径集合,以分号分隔</param> //public void AddAttachments(string attachmentsPath) //{ // string[] path = attachmentsPath.Split(';'); //以什么符号分隔可以自定义 // Attachment data; // ContentDisposition disposition; // for (int i = 0; i < path.Length; i++) // { // data = new Attachment(path[i], MediaTypeNames.Application.Octet); // disposition = data.ContentDisposition; // disposition.CreationDate = File.GetCreationTime(path[i]); // disposition.ModificationDate = File.GetLastWriteTime(path[i]); // disposition.ReadDate = File.GetLastAccessTime(path[i]); // mMailMessage.Attachments.Add(data); // } //} ///<summary> /// 邮件的发送 ///</summary> public SMSResponse Send(MailMessage mailMessage) { SMSResponse response = new SMSResponse() { ResponseData = "邮件参数设置错误", statusCode = "201" }; try { if (mailMessage != null) { mSmtpClient = new SmtpClient(); //mSmtpClient.Host = "smtp." + mMailMessage.From.Host; mSmtpClient.Host = this.mSenderServerHost; mSmtpClient.Port = this.mSenderPort; mSmtpClient.UseDefaultCredentials = false; mSmtpClient.EnableSsl = this.mEnableSsl; if (this.mEnablePwdAuthentication) { System.Net.NetworkCredential nc = new System.Net.NetworkCredential(this.mSenderUsername, this.mSenderPassword); //mSmtpClient.Credentials = new System.Net.NetworkCredential(this.mSenderUsername, this.mSenderPassword); //NTLM: Secure Password Authentication in Microsoft Outlook Express mSmtpClient.Credentials = nc.GetCredential(mSmtpClient.Host, mSmtpClient.Port, "NTLM"); } else { mSmtpClient.Credentials = new System.Net.NetworkCredential(this.mSenderUsername, this.mSenderPassword); } mSmtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; mSmtpClient.Send(mailMessage); // send successfully. response.statusCode = "200"; } } catch (Exception e) { // send failed. response.statusCode = "202"; response.InnerException = e; response.ResponseData = "邮件发送失败"; } return response; }