using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.IO; using System.Net; using System.Web.Mail;public partial class netuser_webproxy : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { MailMessage mail = new MailMessage(); mail.From ="[email protected]"; mail.To="[email protected]";//要发送的对象 mail.Subject = "1111111111";//主题 mail.Body = "2222222222222";//正文 mail.Fields["http://schemas.microsoft.com/cdo/configuration/sendusername"] = "[email protected]";//你发送用的邮箱 mail.Fields["http://schemas.microsoft.com/cdo/configuration/sendpassword"] = "3453453";//邮箱密码 mail.Fields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"] = 1; mail.Fields["http://schemas.microsoft.com/cdo/configuration/languagecode"] = 0x0804; SmtpMail.SmtpServer = "smtp.163.com";//smtp服务器 SmtpMail.Send(mail); Response.Write("success!");
using System; using System.Web;namespace EMailCommon { /// <summary> /// Summary description for CDOSendMail. /// </summary> public class CDOSendMail { public CDOSendMail() { // // TODO: Add constructor logic here // }
public static void sendMail(string mailFrom, string mailTo, string mailSubject, string mailBody) { try { CDO.Message oMsg = new CDO.Message();
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Net;
using System.Web.Mail;public partial class netuser_webproxy : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MailMessage mail = new MailMessage();
mail.From ="[email protected]";
mail.To="[email protected]";//要发送的对象
mail.Subject = "1111111111";//主题
mail.Body = "2222222222222";//正文
mail.Fields["http://schemas.microsoft.com/cdo/configuration/sendusername"] = "[email protected]";//你发送用的邮箱
mail.Fields["http://schemas.microsoft.com/cdo/configuration/sendpassword"] = "3453453";//邮箱密码
mail.Fields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"] = 1;
mail.Fields["http://schemas.microsoft.com/cdo/configuration/languagecode"] = 0x0804;
SmtpMail.SmtpServer = "smtp.163.com";//smtp服务器
SmtpMail.Send(mail);
Response.Write("success!");
}
}
MSDN 里有示例啊
/// <summary>
/// 使用微软类库的发送电邮函数
/// </summary>
/// <param name="Subject"></param>
/// <param name="Body"></param>
/// <param name="To"></param>
/// <returns></returns>
public bool Send(string Subject, string Body, string To)
{
try
{
MailMessage msg = new MailMessage();
msg.From = new MailAddress(ConfigurationManager.AppSettings["MailFrom"], ConfigurationManager.AppSettings["MailFromName"]);
msg.To.Add(new MailAddress(To, To)); msg.Subject = Subject;
msg.Body = Body;
msg.IsBodyHtml = true;
msg.Priority = MailPriority.High;
SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["MailDomain"]);
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings["MailServerUserName"], ConfigurationManager.AppSettings["MailServerPassWord"]); //帐号密码
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; client.Send(msg);
return true;
}
catch { return false; }
}
#endregion
mail.Attachments.Add(a);
加附件的在aspx页面上加上一个<asp:FileUpload ID="FileUpload1" runat="server" />
页面的编辑要去网上下编辑器
{
/// <summary>
/// Summary description for SendMailLogic
/// </summary>
public class SendMailLogic
{
/// <summary>
/// 单例访问成员变量
/// </summary>
private static readonly SendMailLogic instance = new SendMailLogic(); /// <summary>
/// 返回SendMailLogic的单个实例
/// </summary>
public static SendMailLogic Instance
{
get
{
return instance;
}
} /// <summary>
/// 构造函数
/// </summary>
public SendMailLogic()
{
//
// TODO: Add constructor logic here
//
} /// <summary>
/// 发送邮件
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public SendMailResponse SendMail( SendMailRequest request )
{
try
{
MailMessage myMail = new MailMessage();
myMail.From = new MailAddress( request.From );
PaserMailAddress( request.To, myMail.To );
PaserMailAddress( request.CC, myMail.CC );
PaserMailAddress( request.Bcc, myMail.Bcc );
myMail.Subject = request.Subject;
myMail.Body = request.Body; if (request.Attachments != null)
{
for (int i = 0; i < request.Attachments.Length; i++)
{
System.Net.Mail.Attachment mailAttach = new System.Net.Mail.Attachment(ByteArrayToStream(request.Attachments[i].FileData), request.Attachments[i].FileName); myMail.Attachments.Add( mailAttach );
}
} if (string.IsNullOrEmpty(ConfigurationManager.AppSettings[BizConsts.APPKEY_SMTP_SERVER]))
{
throw new ApplicationException( "SMTP服务器未设置" );
} //Smtp Server
SmtpClient mailClient = new SmtpClient(ConfigurationManager.AppSettings[BizConsts.APPKEY_SMTP_SERVER]); if (!string.IsNullOrEmpty(ConfigurationManager.AppSettings[BizConsts.APPKEY_SMTP_SERVERPORT]))
{
//端口号
try
{
mailClient.Port = Int32.Parse(ConfigurationManager.AppSettings[BizConsts.APPKEY_SMTP_SERVERPORT]);
}
catch
{
throw new ApplicationException("SMTP服务器端口设置错误,端口必须设置为数值型");
}
} if ( CheckMailUserConfig() )
{
//需要指定帐户信息
mailClient.Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings[BizConsts.APPKEY_MAIL_USER], ConfigurationManager.AppSettings[BizConsts.APPKEY_MAIL_USERPW]); mailClient.DeliveryMethod = SmtpDeliveryMethod.Network;
}
mailClient.Send(myMail); SendMailResponse response = new SendMailResponse(); response.ErrorCode = BizConsts.ERRCODE_SUCCESSFUL.ToString();
response.ErrorMsg = string.Empty; return response;
}
catch (SmtpFailedRecipientsException e)
{
Trace.Write("无法发送邮件到所有邮件地址:" + e.Message); SendMailResponse response = new SendMailResponse(); response.ErrorCode = BizConsts.ERRCODE_FAILED.ToString();
response.ErrorMsg = e.Message; return response;
}
catch (SmtpFailedRecipientException e)
{
Trace.Write("无法发送邮件到个别邮件地址:" + e.Message); SendMailResponse response = new SendMailResponse(); response.ErrorCode = BizConsts.ERRCODE_FAILED.ToString();
response.ErrorMsg = e.Message; return response;
}
catch (SmtpException e)
{
Trace.Write("发送邮件时的Smtp异常:" + e.Message); SendMailResponse response = new SendMailResponse(); response.ErrorCode = BizConsts.ERRCODE_FAILED.ToString();
response.ErrorMsg = e.Message; return response;
}
catch (Exception e)
{
Trace.Write("发送邮件时的异常:" + e.Message); throw new ApplicationException( "发送邮件时的异常" , e );
}
} /// <summary>
/// 解析分解邮件地址
/// </summary>
/// <returns></returns>
private void PaserMailAddress( string mailAddress, MailAddressCollection mailCollection )
{
if (string.IsNullOrEmpty(mailAddress) )
{
return;
} char[] separator = new char[2] {',',';' };
string[] addressArray = mailAddress.Split(separator); foreach (string address in addressArray )
{
if(address.Trim() == "")
{
continue;
} mailCollection.Add(new MailAddress(address ));
}
} /// <summary>
/// 检查是否配置了邮件帐户
/// </summary>
/// <returns></returns>
private bool CheckMailUserConfig()
{
if (!string.IsNullOrEmpty(ConfigurationManager.AppSettings[BizConsts.APPKEY_MAIL_USER]))
{
return true;
}
else
{
return false;
}
} /// <summary>
/// 字节数组转换为流
/// </summary>
/// <param name="byteArray"></param>
/// <returns></returns>
private Stream ByteArrayToStream( byte[] byteArray )
{
MemoryStream mStream = new MemoryStream(byteArray); return mStream;
}
}}
using System.Web;namespace EMailCommon
{
/// <summary>
/// Summary description for CDOSendMail.
/// </summary>
public class CDOSendMail
{
public CDOSendMail()
{
//
// TODO: Add constructor logic here
//
}
public static void sendMail(string mailFrom, string mailTo, string mailSubject, string mailBody)
{
try
{
CDO.Message oMsg = new CDO.Message();
oMsg.From = mailFrom; //"[email protected]";
oMsg.To = mailTo; //"[email protected]";
oMsg.Subject = mailSubject; // "MailTest";
oMsg.HTMLBody = mailBody; //"<html><body>Test</body></html>"; CDO.IConfiguration iConfg = oMsg.Configuration;
ADODB.Fields oFields = iConfg.Fields;
oFields["http://schemas.microsoft.com/cdo/configuration/sendusing"].Value=2;
oFields["http://schemas.microsoft.com/cdo/configuration/sendemailaddress"].Value= mailFrom; //"[email protected]"; //sender mail
oFields["http://schemas.microsoft.com/cdo/configuration/smtpaccountname"].Value= mailTo; //"[email protected]"; //email account
//oFields["http://schemas.microsoft.com/cdo/configuration/sendusername"].Value="[email protected]";
oFields["http://schemas.microsoft.com/cdo/configuration/sendusername"].Value = System.Configuration.ConfigurationSettings.AppSettings["sendusername"];
//oFields["http://schemas.microsoft.com/cdo/configuration/sendpassword"].Value="33036";
oFields["http://schemas.microsoft.com/cdo/configuration/sendpassword"].Value = System.Configuration.ConfigurationSettings.AppSettings["sendpassword"];
oFields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"].Value=1;
//value=0 代表Anonymous验证方式(不需要验证)
//value=1 代表Basic验证方式(使用basic (clear-text) authentication.
//The configuration sendusername/sendpassword or postusername/postpassword fields are used to specify credentials.)
//Value=2 代表NTLM验证方式(Secure Password Authentication in Microsoft Outlook Express)
oFields["http://schemas.microsoft.com/cdo/configuration/languagecode"].Value=0x0804;
//oFields["http://schemas.microsoft.com/cdo/configuration/smtpserver"].Value= "smtp.163.com";
oFields["http://schemas.microsoft.com/cdo/configuration/smtpserver"].Value= System.Configuration.ConfigurationSettings.AppSettings["smtpserver"];
//"smtp.21cn.com"; oFields.Update();
oMsg.BodyPart.Charset="ISO-8859-1";
oMsg.HTMLBodyPart.Charset="ISO-8859-1"; oMsg.Send();
oMsg = null;
}
catch (Exception e)
{
throw e;
}
}
}
}
我没用过,就听说过
据说挺不错的