如何实现登陆后返回的功能 比如用户在访问a.aspx,a.aspx要求用户登陆,如果用户没有登陆则跳转到登陆页面(login.aspx),用户在登陆后如何返回a.aspx?或者说在login.aspx中,如何得到上一个出错页面的地址? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]); FormsAuthentication.RedirectFromLoginPage membership 可以很好的解决你的问题? a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);也可以 membership 可以很好的解决你的问题? a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);也可以---------------------------------------------------------------------------------我这里怎么不行呢? Write不是写吗?为什么不用redrect? 应该是使用form验证lz说的很对,这个是将字符串写入到回应的数据流里面去,如果要转向,可以用redirect protected void Page_Load(object sender, EventArgs e) { ViewState["UrlReferrer"] = Request.UrlReferrer.ToString(); HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"]; Response.Write((string)ViewState["UrlReferrer"]); } protected void Page_Load(object sender, EventArgs e) { ViewState["UrlReferrer"] = Request.UrlReferrer.ToString(); HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"]; Response.Write((string)ViewState["UrlReferrer"]); }---------------------------------------------------------------我觉得这个很好啊。 1Form 验证2自已写代码处理 记录上一次访问的页面地址,如:login.aspx?url=a.aspx 我是在数据库设计了一个字段来记录登陆用户的权限然后在登陆的时候创建个Session,,在其他页面的pageload中来判断用户是否登陆和登陆权限Session为空则未登陆,有值的话就判断权限 肯定别的页面放Session,判断他的有无,再跳转页面 protected void Application_AuthenticateRequest(Object sender, EventArgs e) { try { //判断用户是否登录 } catch(CheckSessionException ex) { log.Warn("Checksession Failed:" + ex.Message); string logonPageUrl = Request.ApplicationPath + Globe.LOGIN_PAGE; if(string.Compare(Request.Path,logonPageUrl,true)!=0 && Request.Path.IndexOf("Public/")==-1) { string url = Request.Url.ToString().Replace('&','*'); Response.Redirect(logonPageUrl + "?BackUrl=" + url); } } } 未能找到存储过程 'SP_Pagination'。 HyperLink的链接小问题,,,你,你,你,他,他,他,,都会,,就我不会,,,,汗,,急,, 有在线支付经验的朋友,请来帮下忙! 关于DataList的问题 正则替换 讨论 asp.net 中控件在浏览器中生成的ID可不可以不自动按ASP.net的规则生成啊? 求助 索引超出了数组界限 本机能不能架设Email服务器?怎么架~~ ▼发现treeview控件的一个缺陷▼ 求助:如果在网页之间进行数据传递? 问个非常简单的问题``````在线等 在線等,,以下多選刪除報錯,
a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);也可以
a.aspx->login.aspx?url=a.aspx->登陆成功->Response.Write(Request["url"]);也可以
---------------------------------------------------------------------------------
我这里怎么不行呢?
lz说的很对,这个是将字符串写入到回应的数据流里面去,如果要转向,可以用redirect
{
ViewState["UrlReferrer"] = Request.UrlReferrer.ToString(); HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"];
Response.Write((string)ViewState["UrlReferrer"]);
}
{
ViewState["UrlReferrer"] = Request.UrlReferrer.ToString(); HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"];
Response.Write((string)ViewState["UrlReferrer"]);
}
---------------------------------------------------------------
我觉得这个很好啊。
2自已写代码处理
如:login.aspx?url=a.aspx
{
try
{
//判断用户是否登录
}
catch(CheckSessionException ex)
{
log.Warn("Checksession Failed:" + ex.Message);
string logonPageUrl = Request.ApplicationPath + Globe.LOGIN_PAGE;
if(string.Compare(Request.Path,logonPageUrl,true)!=0 && Request.Path.IndexOf("Public/")==-1)
{
string url = Request.Url.ToString().Replace('&','*');
Response.Redirect(logonPageUrl + "?BackUrl=" + url);
}
}
}