web.config 配置发布地址:
<appSettings>
<add key="ServerUrl" value="http://localhost:12112/Login.aspx"/>
</appSettings>
Global.asax.cs 加上以下代码:
protected void Application_End(object sender, EventArgs e)
{
//解决应用池回收问题
System.Threading.Thread.Sleep(5000);
string strUrl = ConfigurationManager.AppSettings["ServerUrl"];
System.Net.HttpWebRequest _HttpWebRequest = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(strUrl);
System.Net.HttpWebResponse _HttpWebResponse = (System.Net.HttpWebResponse)_HttpWebRequest.GetResponse();
System.IO.Stream _Stream = _HttpWebResponse.GetResponseStream();//得到回写的字节流
}
加上你这个代码就能解决问题了吗?
System.IO.Stream _Stream = _HttpWebResponse.GetResponseStream();//得到回写的字节流
这样就完了? 不需要对这个 _Stream再进行操作了?
@llllboy: 不需要了。
@五行缺木: 好的,我明天到公司试试。
@五行缺木: 我用了你给我的这段代码 加到了 Global.asax 里面的Application_End事件里面
不发邮件的问题解决了,但是好像对性能有影响呀。服务器管理员说 每一个小时CPU都超高并报警
请问会不会是这段代码影响的呀 顺便我有个疑问 上面的这句代码
System.IO.Stream _Stream = _HttpWebResponse.GetResponseStream();//得到回写的字节流
不用Close它吗?
Thread被回收了吧1!
像这么定时任务最好采用windows服务,IIS进程会因为各种原因被回收或者重启。
用 Quartz.NET
采用windows服务是正解
计划任务,定时访问,触发,发送邮件
开一个网页定时刷新,防止web服务没人访问时自动停止。