当前位置:编程学习 > C#/ASP.NET >>

在基类中判断用户是否登录之后跳转login.aspx出现的问题

因为要用基类判断用户是否登录,而不同文件夹下的文件要继承这个基类,因此导致下面的问题:

我在网上也搜索了相关的问题,基本上用
Response.Redirect("~/login.aspx?url=" + url, true);
这种方法的人比较多

但是我用这种方法,在浏览器里访问会显示
http://localhost:1743/test/~/login.aspx?url=....

也就是不能跳转到根目录
正确的效果应该是
http://localhost:1743/test/login.aspx?url=...

期待高手指点迷津

谢谢。 --------------------编程问答-------------------- 每个页面load时,都判断是否登录,如果不登陆就跳转,这样在ie中输入也没用 --------------------编程问答--------------------
引用 1 楼 bdmh 的回复:
每个页面load时,都判断是否登录,如果不登陆就跳转,这样在ie中输入也没用


什么意思?不太明白 --------------------编程问答-------------------- 自己顶下 --------------------编程问答-------------------- Response.Redirect("/test/login.aspx?url=" + url, true); --------------------编程问答--------------------
引用 4 楼 shshjun 的回复:
Response.Redirect("/test/login.aspx?url=" + url, true);

登陆的时候保存用户信息 每个页面判断一下
 /*判断用户是否登录*/
            if (Session["user"] == null)
            {
                Response.Redirect("Default.aspx");
            } --------------------编程问答-------------------- 新手,学习中 --------------------编程问答-------------------- 参考:
http://www.cnblogs.com/insus/articles/2032508.html
or
http://www.cnblogs.com/insus/articles/2055531.html
or
http://www.cnblogs.com/insus/articles/1429434.html --------------------编程问答--------------------
引用 5 楼 somethingjack 的回复:
引用 4 楼 shshjun 的回复:

Response.Redirect("/test/login.aspx?url=" + url, true);

登陆的时候保存用户信息 每个页面判断一下
 /*判断用户是否登录*/
  if (Session["user"] == null)
  {
  Response.Redirect("Default.aspx");
  }


这样的写法很不灵活 --------------------编程问答--------------------
引用 4 楼 shshjun 的回复:
Response.Redirect("/test/login.aspx?url=" + url, true);


如果我部署到外网的话,就不能加/test/了 --------------------编程问答--------------------
引用 9 楼 zdyguilong 的回复:
引用 4 楼 shshjun 的回复:
Response.Redirect("/test/login.aspx?url=" + url, true);


如果我部署到外网的话,就不能加/test/了

额  那坐等别人回答- - --------------------编程问答-------------------- 可以建立一个基类类库 类名都一样如public partial class className即可
然后页面继承className; 即可调用该类库所有的class ; 

至于Response.Redirect("~/login.aspx?url=" + url, true);问题 
使用Response.Redirect("/login.aspx?url=" + url, true);即可; 若使用的是非应用程序网站则要加虚拟目录名... --------------------编程问答-------------------- Response.Redirect(ResolveUrl("~/login.aspx?url=" + url), true) --------------------编程问答-------------------- Response.Redirect("login.aspx?url=" + url, true);
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,