欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【asp.net发邮件示例】,下面是详细的讲解!
asp.net发邮件示例
protected void SendMail()
{
try
{
string CreaterName="";
string examiner="";
List<string> mailList=GetMailList(ref CreaterName, ref examiner);
MailEntity me=new MailEntity();
MailEntity me_1=new MailEntity();
me.AddresserMail=ConfigurationManager.AppSettings["AddresserMail"].ToString();
me.AddresserName=ConfigurationManager.AppSettings["AddresserName"].ToString();
me.AddresserPwd=ConfigurationManager.AppSettings["AddresserPwd"].ToString();
me_1.AddresserMail=ConfigurationManager.AppSettings["AddresserMail_1"].ToString();
me_1.AddresserName=ConfigurationManager.AppSettings["AddresserName_1"].ToString();
me_1.AddresserPwd=ConfigurationManager.AppSettings["AddresserPwd_1"].ToString();
string strPostfix=ConfigurationManager.AppSettings["Postfix"].ToString();
string isSend=ConfigurationManager.AppSettings["isSend"].ToString();
StringBuilder ss=new StringBuilder();
if (isSend=="1")
{
if (mailList.Count > 0)
{
foreach (string mail in mailList)
{
int count=mail.IndexOf("@");
string postfix=mail.Substring(count + 1);
string[] pf=strPostfix.Split(new char[] { '|' });
int pCount=0;
foreach (string p in pf)
{
if (postfix==p)
{
pCount++;
break;
}
}
if (pCount > 0)
{
me.AddresseeMail=mail.ToString();
}
else
{
me_1.AddresseeMail=mail.ToString();
}
string Body="";
try
{
using (StreamReader sr=new StreamReader(HttpRuntime.BinDirectory + "/../tpl/tpl_Debt.htm", System.Text.Encoding.Default))
{
Body=sr.ReadToEnd();
}
}
catch (Exception ex)
{
lbMessage.Text="*** 读取模板出错(reading template failed)!" + ex.Message;
lbMessage.ForeColor=System.Drawing.Color.Red;
return;
}
// --------------------------------------------------------------------------
me.ClientHost=ConfigurationManager.AppSettings["clientHost"].ToString();
me.MailEncoding=System.Text.Encoding.GetEncoding("GB2312");
me.MailPriority=System.Net.Mail.MailPriority.Normal;
me.IsBodyHtml=true;
me.Subject="[" + CreaterName + "]创建的借款单";
//--------------------------------------------------------------------------
me_1.ClientHost=ConfigurationManager.AppSettings["clientHost_1"].ToString();
me_1.MailEncoding=System.Text.Encoding.GetEncoding("GB2312");
me_1.MailPriority=System.Net.Mail.MailPriority.Normal;
me_1.IsBodyHtml=true;
me_1.Subject="[" + CreaterName + "]创建的借款单";
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_ExpenseName", CreaterName);//借款人
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Type", ddlDebtType_Add.SelectedItem.Text);//借款类型
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Money", txbMoney_Add.Text);//金额
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Mender", txtMender.Text);//审核人
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Time", tbxDebtTime_Add.Text);//借款时间
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Advance", tbAdvance.Text);//代/垫款单位
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_DebtPathWay", ddlDebtPathWay.SelectedItem.Text);//借款方式
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Remark", txbMemo_Add.Text);//借款事由
// Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Mend", "");//审核意见
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_Memo", "");//备注
string url=HttpContext.Current.Request.Url.AbsoluteUri;
url=url.Replace("http://", "");
int index=url.IndexOf("/");
url="http://" + url.Substring(0, index + 1);
Body=Body.Replace("DTTPL_COMM_MODULE_NAME_LINK", url + "Affair/SelectWorkEvent.aspx?typeid=249");
me.Body=Body;
me_1.Body=Body;
if (me.AddresseeMail==null && me.CopyToAddresseeMail==null && me_1.AddresseeMail==null && me_1.CopyToAddresseeMail==null)
{
lbMessage.Text="*** 借款单保存成功! 但责任人/关注人因在数据库没有存邮箱地址,邮件未曾发送!";
lbMessage.ForeColor=System.Drawing.Color.Red;
return;
}
if (me.AddresseeMail !=null || me.CopyToAddresseeMail !=null)
{
bool temp=false;
for (int y=0; y < 3; y++)
{
try
{
if (MailServer.SendMail(me))
{
temp=true;
break;
}
}
catch (Exception ex)
{
continue;
}
}
if (!temp)
{
if (me.AddresseeMail !=null)
{
ss.Append(me.AddresseeMail.Trim());
}
if (me.CopyToAddresseeMail !=null && me.CopyToAddresseeMail.Trim() !="")
{
ss.Append(",");
ss.Append(me.CopyToAddresseeMail.Trim());
}
}
me.AddresseeMail=null;
}
if (me_1.AddresseeMail !=null || me_1.CopyToAddresseeMail !=null)
{
bool temp=false;
for (int y=0; y < 3; y++)
{
try
{
if (MailServer.SendMail(me_1))
{
temp=true;
break;
}
}
catch (Exception ex)
{
continue;
}
}
if (!temp)
{
if (ss.ToString().Trim() !="")
{
ss.Append(",");
if (me_1.AddresseeMail !=null)
ss.Append(me_1.AddresseeMail.Trim());
if (me_1.CopyToAddresseeMail !=null && me_1.CopyToAddresseeMail.Trim() !="")
{
ss.Append(",");
ss.Append(me_1.CopyToAddresseeMail.Trim());
}
}
else
{
if (me_1.AddresseeMail !=null)
ss.Append(me_1.AddresseeMail.Trim());
if (me_1.CopyToAddresseeMail !=null && me_1.CopyToAddresseeMail.Trim() !="")
{
ss.Append(",");
ss.Append(me_1.CopyToAddresseeMail.Trim());
}
}
}
me_1.AddresseeMail=null;
}
}
}
}
}
catch (Exception ex)
{
lbMessage.Text="*** 发送失败(the email is not sent)!" + ex.ToString();
lbMessage.ForeColor=System.Drawing.Color.Red;
}
}
关于asp.net发邮件示例的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【Asp】Asp.net 页面调用javascript变量的值-net-
- 【ASP】ASP.NET 5升级后如何删除旧版本的DNX-NET5
- 【asp】asp.net ubb使用代码-net-ubb使用
- 【默认图片】图片不存在使用默认图片代替的实例
- 【asp】asp.net 页面转向 Response.Redirect Ser
- 【jQuery】jQuery实现倒计时跳转的例子-倒计时跳
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
