2012-04-07 4 views
0
test.Controls.Add(GetButton(thisReader["session_id"].ToString(), "Join Session")); 

ich den obigen Code zu dem einen geändert habe unten anasp.net url Generation mit Namen und id

test.Controls.Add(GetButton(thisReader["session_name"].ToString(), "Join Session")); 

ich dies tat, weil ich wollte, dass mein Ende URL session= session_name instade der session_id haben . dies zu tun erstellt jetzt ein Problem, weil die seit Sitzungs_ID war ich nicht die Ergebnisse bestanden auf der nächsten Seite basierend auf Sitzungs_ID sind nicht die ursprüngliche Frage displayed.Please siehe asp.net url generation

Response.Redirect("EnterSession.aspx?session=" + e.CommandArgument.ToString()); 

, wie Sie dieses Problem lösen kann?

C# Teil entersession.aspx

public partial class _EnterSession2 : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 



      SessionID.Value = Request.QueryString["session"]; 
      // Label2.Text = DateTime.Now.ToString(); 
      if (User.Identity.IsAuthenticated) 
      { 
       string userName = User.Identity.Name; 
       //Username.Value = User.Identity.Name; 
       Username.Value = userName.ToLower(); 
       HiddenField1.Value = User.Identity.Name; 
      } 

     } 

Antwort

0

können Sie eine Methode in EnterSession.aspx Seite definieren. welches Parameter als Anfrage ["Sitzung"] nimmt. Dann können Sie den Aufruf von db aufrufen, um session_id basierend auf session_name abzurufen.

Verwendung unter Code

public partial class _EnterSession2 : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

     SessionID.Value = GetSesssionID(Request["session"]); 
     // Label2.Text = DateTime.Now.ToString(); 
     if (User.Identity.IsAuthenticated) 
     { 
      string userName = User.Identity.Name; 
      //Username.Value = User.Identity.Name; 
      Username.Value = userName.ToLower(); 
      HiddenField1.Value = User.Identity.Name; 
     } 

    } 

private string GetSesssionID(string session_name) 
{ 
    string strRetval = string.Empty; 
    // make database call to fetch session_id and assign value to strRetval. 


    return strRetval; 

} 

Hoffnung das wird Ihnen helfen ....

+0

Ich habe einen Code hinzugefügt, die ur Vorschlag ähnlich ist, jedoch gibt es bereits in C# Teil entersession.aspx. Bitte schauen Sie und sagen Sie mir, wie kann ich es ändern – buni

+0

Ich habe ändern meine Antwort nach Ihrer Anforderung. Bitte schauen Sie ... wenn es funktioniert –

+0

sollte ich smt auf meiner DB-Abfrage ändern müssen? Mit diesem Code hat es nicht funktioniert – buni