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. ......
在开发中经常会遇到这样的情况,在部署程序时为了保密起见并不将源代码随项目一同发布,而我们开发时的环境与部署环境可能不一致(比如数据库不一样),如果在代码中保存这些配置这些信息部署时需要到用户那里更改代码再重新编译,这种部署方式非常麻烦。
在.net中提供了一种便捷的保存项目配置信息的办法,那就是利用配置 ......
如果仅仅是上传一个文件,最好是使用FileUpload控件, 可以使用FileUpload1.FileContent.Length得到文件大小, FileUpload1.FileBytes得到其字节数组, 代码略.
如果要上传多个文件, 其客户端代码与使用ASP.NET上传多个文件到服务器基本相同, 本例中加入了下载的示例代码。
效果图如下:
数据库脚本
create data ......