使用会话重定向页面

时间:2011-06-11 09:58:36

标签: asp.net

我是ASP.NET的新手,所以请耐心等待:D 我想将我的一个页面重定向到另一个页面,我保留用户名! 我试图使用session.add和session [],但是当我想在括号内插入用户名时,它表示使用必须int !!!但我认为我应该使用session [“username”] 我用另一种方式(request.querystring []),但都有问题 这是我的代码

    //first solution    
    string username="asal";
    session.Add(username,username);  
    Response.Redirect("~/Doctor/DoctorsMainPage.aspx");
    //in the other page  
    Label1.Text= Session["username"].ToString();//this one says use int?!
    //i used this one instead of it
    Label1.Text= Session[0].ToString();//with this one i get the username in other page,but one i want to pass another string like "id" with session,I can not!

    //the second solution  
    string username="asal";
    Response.Redirect("~/Doctor/DoctorsMainPage.aspx?username");
    Label1.Text = Request.QueryString["username"];//this one redirect to doctors main page but set the value of username to "" !

3 个答案:

答案 0 :(得分:0)

您必须添加会话,例如..

session.Add("username",username);代替session.Add(username,username);

然后你可以访问像Label1.Text= (String)Session["username"];

这样的值

查看与会话状态ASP.NET Session State Overview相关的本文,它将帮助您了解会话状态管理。

Seconly查询字符串应该是这样的,因为你没有传递你的字符串参数,它应该像......

 Response.Redirect("~/Doctor/DoctorsMainPage.aspx?username=" + username);

答案 1 :(得分:0)

session.Add(string,string)其中第一个字符串是变量的名称,第二个字符串是值。

您要添加两次值。

//first solution    
string username="asal";
session.Add("username",username);  <-- this is your problem
Response.Redirect("~/Doctor/DoctorsMainPage.aspx");

//in the other page  
Label1.Text= Session["username"].ToString();

现在,至于

//the second solution  
string username="asal";
Response.Redirect("~/Doctor/DoctorsMainPage.aspx?username");
Label1.Text = Request.QueryString["username"];//this one redirect to doctors main page but set the value of username to "" !

在这种情况下,您正在创建一个网址“〜/ Doctor / DoctorsMainPage.aspx?username”

好的 - 那么什么是用户名?代码正在查找名为username的查询字符串中的参数,但它没有找到值。 你需要:

Response.Redirect("~/Doctor/DoctorsMainPage.aspx?username="+username);

那会给你“〜/ Doctor / DoctorsMainPage.aspx?username = asal”

答案 2 :(得分:0)

 string username = "asal";
        Session["username"] = username;  
        Response.Redirect("~/Doctor/DoctorsMainPage.aspx");

        //Other page
        Label1.Text = Session["username"].ToString().Trim();