asp.net 发送邮件
几个月前,做用户注册模块要用到发送邮件功能,也碰到了些或大或小的问题,现在总结一下:
我先贴出发送邮件用到的代码:
public void SendEmail(string stremail, string content,string title)
{
MailMessage mm = new MailMessage();
mm.from = new MailAddress(公司邮箱);
mm.To.Add(stremail); //stremail为目标邮箱地址
mm.Subject = title; //邮件标题
mm.Body = content;
mm.IsBodyHtml = true;
SmtpClient client = new SmtpClient("smtp.126.com");
client.Credentials = new NetworkCredential(公司邮箱, 邮箱密码);//CredentialCache.DefaultNetworkCredentials;
try
{
client.Send(mm);
}
catch
{
//异常处理。。。
}
}
1,当初,我使用自己的126邮箱来发送邮件,在程序中,代码没变动。结果:总是失败。
网上查资料说是关闭了该项服务。只能使用02年以前注册的邮箱才可以。最终找到一个同事的邮箱用来发送邮件,
还是没改动代码,结果。成功了。
2 今天要改动点需求,又翻开代码,发现发送邮件失败。“邮件表头中找到无效字符”,郁闷了好一会儿,最终,想起自己改动过计算机名,
改成中文了,到网上一查资料,发现有人提到。原因是SmtpClient使用了计算机名作为smtp协议中HELO命令的参数,而在发送命令时又会对字符进行检查,若是非法字符则会抛出异常,很不幸中文字符都包括在内
相关文档:
计划推出的《ASP.NET实战笔记》,提纲如下: 第一篇 典型的网站架构解决方案
第1章 系统目标
1.1 需求分析
1.2 系统目标
第2章 系统功能预览
2.1 用户管理
2.1.1. ......
一直以来将数据库中的时间绑定到gridview中后,显示的后面总是会多出一串00:00:00,
原来是绑定的时候没有格式化字符串,只要在绑定时加入如下格式就对了。
<asp:BoundField DataField="FieldName" HeaderText="时间" DataFormatString="{0:d}" HtmlEncode="false"> ......
在Email系统中经常会上传多个文件到服务器,用户大多习惯一次上传所有的文件,而不是逐个上传,我们可以使用javascript动态地添加file元素到表单,然后在服务器端处理这些file
效果图如下:
页面代码MutlileFileUpload.aspx如下:
view plaincopy to clipboardprint?
<%@ Page Language="C#" AutoEventWireup="true" C ......
ASP。NET中共有几种类型的控件
========================================
两种:
1. 客户端控件,也就是我们在HTML中经常用到的
2. 服务端控件,例如: <asp:TextBox ID="txt" runat="server" />
客户端控件也可以转成服务端控件
<input type="text" id="txt" runat="server" />
HTML 和 WEB
ASP。NET ......
上下文对象
===================================
一种对象,它当MTS服务器组件在一个活动中运行时跟踪该组件的属性,包括被跟踪组件的激活状态、安全信息、事务处理状态(如果存在)等。这样就免除了让组件去跟踪其自身状态。
上下文对象是web服务器上基于web应用的一个背景环境对象,上下文对象提供了一个同一web应用 ......