询问者
继承PAGE的问题

问题
-
很简单的权限继承体系,
public class BasePage : System.Web.UI.Page
{protected override void OnPreInit(EventArgs e)
{
//没有登陆
if (Session["UserInfo"] == null)
{
Response.Redirect("Login.aspx", true); -- 当去掉这一句时B页面就不会出现阻塞状态.}
base.OnPreInit(e);
}
上面的代码我就不重复什么意思了, 我现在将奇怪现像描述一次,
当在Login.aspx 里面,给Session赋值并登陆进来以后, 在Default.aspx页面中, 只有两个超链接,
<a href="A.aspx" target="_blank">A</a>
<a href="B.aspx" target="_blank">B</a>
当打开A页面并点击查询, A页面的查询大约需要10分钟左右(大家不要问为什么要查这么久),
在查询的同时再打开B页面时, B页面一直打不开, 一直是阻塞状态, 但B页面是一个空页面, 没有操作,
但是将BasePage类的 " Response.Redirect("Login.aspx", true); " 这一句给注解
的时候, B页面就不会有阻塞状态,
大家帮帮忙解答一下.
学习者- 已移动 Sheng Jiang 蒋晟Moderator 2010年1月13日 20:06 Web服务器端开发 (发件人:ADO.NET 与 LINQ)
全部回复
-
很简单的权限继承体系,
public class BasePage : System.Web.UI.Page
{protected override void OnPreInit(EventArgs e)
{
//没有登陆
if (Session["UserInfo"] == null)
{
Response.Redirect("Login.aspx", true); -- 当去掉这一句时B页面就不会出现阻塞状态.}
base.OnPreInit(e);
}
上面的代码我就不重复什么意思了, 我现在将奇怪现像描述一次,
当在Login.aspx 里面,给Session赋值并登陆进来以后, 在Default.aspx页面中, 只有两个超链接,
<a href="A.aspx" target="_blank">A</a>
<a href="B.aspx" target="_blank">B</a>
当打开A页面并点击查询, A页面的查询大约需要10分钟左右(大家不要问为什么要查这么久),
在查询的同时再打开B页面时, B页面一直打不开, 一直是阻塞状态, 但B页面是一个空页面, 没有操作,
但是将BasePage类的 " Response.Redirect("Login.aspx", true); " 这一句给注解的时候, B页面就不会有阻塞状态,
大家帮帮忙解答一下.
学习者- 已移动 孟宪会Moderator 2010年1月12日 13:22 (发件人:.NET Framework 一般性问题讨论区)
- 已合并 孟宪会Moderator 2010年1月12日 14:06 重复啊重复
-
很简单的权限继承体系,
public class BasePage : System.Web.UI.Page
{protected override void OnPreInit(EventArgs e)
{
//没有登陆
if (Session["UserInfo"] == null)
{
Response.Redirect("Login.aspx", true); -- 当去掉这一句时B页面就不会出现阻塞状态.}
base.OnPreInit(e);
}
上面的代码我就不重复什么意思了, 我现在将奇怪现像描述一次,
当在Login.aspx 里面,给Session赋值并登陆进来以后, 在Default.aspx页面中, 只有两个超链接,
<a href="A.aspx" target="_blank">A</a>
<a href="B.aspx" target="_blank">B</a>
当打开A页面并点击查询, A页面的查询大约需要10分钟左右(大家不要问为什么要查这么久),
在查询的同时再打开B页面时, B页面一直打不开, 一直是阻塞状态, 但B页面是一个空页面, 没有操作,
但是将BasePage类的 " Response.Redirect("Login.aspx", true); " 这一句给注解
的时候, B页面就不会有阻塞状态,
大家帮帮忙解答一下.
学习者- 已合并 孟宪会Moderator 2010年1月14日 4:15 重复
-
大家好. 现在我来说一下模拟环境. 大家可以在本机上调试.
页面有以下几页:Login.aspx , Default.aspx, A.aspx, B.aspx , BasePage类
Login.aspx 继承System.UI.Page 点击按钮代码: Session["UserInfo"] = true;
Response.Redict("Default.aspx")Default.aspx 继承BasePage 页面上只有两个超链接,分别链接到A页面和B页面.
都是打开新窗口的方式链接.
BasePage类
publice Class BasePage:System.Web.UI.Page
{
protected override void OnPreInit(EventArgs e)
{
base.OnPreInit(e);
////没有登陆
if (Session["UserInfo"] == null)
{
Reponse.Redirect("Login.aspx");
}
}
}
A页面.: 一个按钮, 当点击这个按钮, 需要查询数据库5分钟左右.B页面: 一个空页面, 在单击了A页面的按钮以后, 再从Default.aspx上点击B页面.
这时B页面大约要阻塞2分钟左右,
学习者- 已合并 Sheng Jiang 蒋晟Moderator 2010年1月13日 20:05