借书的时候如果超过15天系统就进行邮件通知..请问该怎么弄。是否用到什么函数呢.引入什么空间
解决方案 »
- vs2005换背景颜色
- 谁有判断重复登陆更好的办法?Application_End或Session_End
- 为什么asp.net做的网站首页慢
- 求解决 。。。。。错误 1 未能加载类型“qminoa.Webs.Schedule.DepSchByDay”。
- IIS奇怪的问题
- 关于在网页中使用指纹识别的方法,请各位指点思路
- 用vb语言的asp.net开发erp系统,请问订单从表的输入应该用什么控件比较好?textbox?datagrid?or.....?
- *.ascx文件可以干嘛用???
- 一位一点都不懂asp.net的经理叫我做这么一个功能,
- OA文档管理:有没有可能记录每一个下载了文档用户?
- while 双从循环判断问题 急
- 网站放在公司服务器上,公司外面的人也能访问。
//------------------------------------------------------------------------------
// WorkNote
//
// SendMail.cs
//
// Copyright (c) 2007 APPLIFD TECHNOLOGY CO., LTD. ALL Rights Reserved.
//
// @author 徐林 2007/09/20
//------------------------------------------------------------------------------
using System;
using System.Collections;
using System.IO;
using System.Net;
using System.Net.Mail;
using System.Text;namespace Tstring.Core.Util {
public static class Mail {
//public SendMail()
// : base() {
//} /// <summary>
/// 发送邮箱
/// </summary>
/// <param name="mailTo">接收者邮件地址</param>
/// <param name="mailSubject">邮件标题</param>
/// <param name="mailBody">邮件内容,支持HTML</param>
public static bool Send( string mailTo, string mailSubject, string mailBody ) {
return Send( mailTo, null, null, mailSubject, mailBody, true );
} /// <summary>
/// 发送邮件
/// </summary>
/// <param name="mailTo">接收者邮箱</param>
/// <param name="mailSubject">标题</param>
/// <param name="sAttachments">附件</param>
/// <param name="mailBody">内容</param>
public static bool Send( string mailTo, string mailSubject, string sAttachments, string mailBody ) {
return Send( mailTo, null, new string[] { sAttachments }, mailSubject, mailBody, true );
} /// <summary>
/// 发送邮件
/// </summary>
/// <param name="mailTo">接收者邮件地址</param>
/// <param name="mailCC">抄送者邮件列表</param>
/// <param name="sAttachments">附件列表</param>
/// <param name="mailSubject">邮件标题</param>
/// <param name="mailBody">邮件内容</param>
/// <param name="ishtml">是否是HTML</param>
public static bool Send( string mailTo, string[] mailCC, string[] sAttachments, string mailSubject, string mailBody, bool ishtml ) {
MailMessage message = new MailMessage(); try {
//得到邮件接收者地址
if( !string.IsNullOrEmpty( mailTo ) ) {
MailAddress tocopy = new MailAddress( mailTo );
message.To.Add( tocopy );
} //取得抄送者邮件地址
if( mailCC != null ) {
if( mailCC.Length > 0 ) {
for( int i = 0 ; i < mailCC.Length ; i++ ) {
string sMailCc = mailCC[ i ];
if( String.IsNullOrEmpty( sMailCc ) == false ) {
try {
MailAddress copy = new MailAddress( sMailCc.Trim() );
message.CC.Add( copy );
} catch( Exception e ) {
new Exception( e.Message );
}
}
}
}
} //邮件附件
if( sAttachments != null ) {
if( sAttachments.Length > 0 ) {
for( int i = 0 ; i < sAttachments.Length ; i++ ) {
if( String.IsNullOrEmpty( sAttachments[ i ] ) == false ) {
message.Attachments.Add( new Attachment( sAttachments[ i ] ) );
}
}
}
} //密抄人地址
string sMailBcc = System.Configuration.ConfigurationManager.AppSettings.Get( "MailTo" );
MailAddress copyBcc = new MailAddress( sMailBcc );
message.Bcc.Add( copyBcc ); //发送人地址
MailAddress copyFrom = new MailAddress( sMailBcc );
message.From = copyFrom; //邮件标题
Encoding enc = Encoding.GetEncoding( "GB2312" );
string subjectFormat = "=?{0}?B?{1}?=";
message.Subject = String.Format( subjectFormat, enc.HeaderName,
Convert.ToBase64String( enc.GetBytes( mailSubject ), Base64FormattingOptions.None ) ); if( ishtml ) {
message.IsBodyHtml = true;
} //邮件正文
message.Body = mailBody;
message.BodyEncoding = Encoding.GetEncoding( "GB2312" ); SmtpClient client = new SmtpClient( System.Configuration.ConfigurationManager.AppSettings.Get( "MailServer" ) ); //认证
string sMailUser = System.Configuration.ConfigurationManager.AppSettings.Get( "MailID" );
string sMailPass = System.Configuration.ConfigurationManager.AppSettings.Get( "MailPassword" );
client.Credentials = new NetworkCredential( sMailUser, sMailPass ); //发送
client.Send( message );
return true;
} catch (Exception exp){
throw exp;
}
}
}
}/*
<!--自动邮件报告.Begin-->
<add key="MailServer" value="mail.XXXX.com"/>
<add key="MailID" value="[email protected]" />
<add key="MailPassword" value="******"/>
<add key="MailTo" value="[email protected]" />
<!--自动邮件报告.End-->
*/
有可能会用到的SQLdatediff(day,借书时间字段,getdate()) = 15
2,作业中调用存储过程,存储过程筛选数据为datediff(day,借书时间字段,getdate()) = 153,配置数据库中的邮件相关设置
4,使用数据库配置好的邮件来发送邮件进行通知EXEC msdb.dbo.sp_send_dbmail
@profile_name = '邮件配置名称',
@recipients = '接收人邮件地址',
@body = '邮件正文',
@subject = '邮件标题' ;