ASP.net 页面被关闭后,服务器端是否仍然执行中?
问题:当一个正在执行中的ASPX页面执行到一半的时候,浏览器中你关闭了这个页面,服务器端对应的这个页面的代码仍然在执行么?
答案:除非你代码里面做了特殊判断,否则仍然正在执行。
注意点:
1、客户端显示页面的时候,后台已经执行完了的页面对象早已经不存在了。当然这时候谈不上服务器段执行不执行的问题了。
2、页面还没有返回,处于等待状态的时候。关闭ASPX页面,才会涉及到上面提到的服务器端仍然在执行的情况。
3、客户端关闭的时候根本不向服务器发送指令。
4、除非你代码里面做了特殊判断,这里的特殊判断指用 if(!Response.IsClientConnected) 来检测状态而用代码终止运行。
下面的简单代码就是演示关闭页面后,看是否仍然在执行?
你可以在这个页面打开后, 还没有返回任何信息的时候把这个页面关闭,然后看指定目录下是否有对应文件被创建并填写内容。
protected void Page_Load(object sender, EventArgs e)
{
StringBuilder txt = new StringBuilder();
txt.AppendLine();
txt.AppendLine(DateTime.Now.ToString("u"));
txt.AppendLine("asvd");
Response.Write(DateTime.Now.ToString("u"));
Response.Write("
\r\n");
Thread.Sleep(50000);
txt.AppendLine(DateTime.Now.ToString("u"));
Response.Write(DateTime.Now.ToString("u"));
Response.Write("
\r\n");
// 把一些信息写到另外一个文件,借此察看是否正在运行
string dir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "logs");
if (!Directory.Exists(dir))
Directory.CreateDirectory(dir);
DateTime dt = DateTime.Now;
string shortfileName = string.Format("errors_{0:0000}{1:00}{2:00}.log", dt.Year, dt.Month, dt.Day);
string fileName = Path.Combine(dir, shortfileName);
StreamWriter sw;
if (File.Exists(fileName))
sw = File.AppendText(fileName);
else
sw = File.CreateText(fileName);
sw.Write(txt.ToString());
sw.Close();
sw = null;
相关文档:
刚看到了一片文章 http://dotnet.csdn.net/page/a92a1213-9896-49c7-9c89-14ae5f0d87ae 提到如下几点:
1. 数据库连接超时
2. 创建的对象只管用,不管释放
3. 调试(Debug)模式下编译后,就用于应用环境中了
4. 实际作业模式分享
1,2,3比较好理解,我在做的时候犯了他说的 第三种错误,至 ......
本文目录:
1.membership简介
2.membership在sql server中的设置
3.配置web.config
4.创建用户CreateUserWizard控件
5.用户登录login控件
6.显示当前用户的名称LoginName控件
7.检测用户的身份验证状态的LoginStatus控件
8.为不同类别用户呈现不同内容的LoginView控件
9.更改密码的ChangePassword控件
10 ......
Localize Web 服务器控件使您可以在页的特定区域中显示本地化后的文本。
一、背景
Localize 控件与 Literal Web 服务器控件完全相同,并与 Label Web 服务器控件相似。虽然 Label 控件可让您向显示的文本应用样式,但 Localize 控件不允许这样做。通过设置从 Literal 控件继承的 ......
1.bin添加引用ChineseConverter.dll
2. 添加using Microsoft.International.Converters.TraditionalChineseToSimplifiedConverter;
string strTest = "繁體字";
Response.Write(string.Format("繁体输出:{0}<br/>", ChineseConverter.Convert(strTest, ChineseCon ......
MainPage文件:WebForm1.aspx
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="TestMasterPage.WebForm1" enableViewState="False"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
&n ......