起始页面是Logon.aspx身份验证后直对过Forms验证到Default.aspxDefault.aspx页面IFrame设置如下<frameset cols="20%,80%" border="0" frameSpacing="0" frameBorder="0"> <frame name="mapFrame" src="map.aspx" noresize>
<frame name="mainFrame" src="Main.aspx" noresize>
<noframes>.....</noframes></frameset>
左边的是  导航栏,右边为主窗体Forms 的设置里有//得到原来请求的url
string requestUrl = FormsAuthentication.GetRedirectUrl(FormsAuthentication.FormsCookieName,false);
//重新定向到请求的url
HttpContext.Current.Response.Redirect(requestUrl); 然后在业务业面中判断 身份权限,如果身分不符,则提示并导到Logon.aspx页面重新登录但现在问题是:
1.
比如CustomerInfo.aspx页面在  mainFrame中,它只能Administrator身份的可以访问。
否则到Logon.aspx页面登录。
但现在这样的话  logon.aspx页面打开在mainFrame中,登录后自动到Default.aspx中,而Default.aspx也打开在mainFrame中,这样的话页面就就出现了两个   导航栏了。2.我要注销后同样出现Logon.aspx单一页面
  pubilc void SingOut()
  {
     FormsAuthentication.SignOut();
     Response.Redirect("Logon.aspx");
  }
  
  我身份验证的 处理 在Logon.aspx中,所以注销操作也得在Logon.aspx中进行。
  我在注销操作处用一个xmlHttp来传一个值,在Logon.aspx中判断,如果注销,则调用上面两句。
  但出现同样的问题  后来我改成FormsAuthentication.SignOut();  后关闭窗体
  SingOut();
   Response.Write("<script language='javascript'>parent.close()</script>");
这样却不能关闭窗体.  用window.close()不行,parent.window.close()也不行。