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

上記のコードを以下のコードに変更しました

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

これを行ったsession= session_nameのは、session_id. これを行うと、session_id が渡されなかったため、session_id に基づく次のページの結果が表示されないため、問題が発生しました。元の質問 asp.net url generationを参照してください。

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

どうすればこの問題を解決できますか?

c# 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;
            }

        }
4

1 に答える 1

0

EnterSession.aspx ページでメソッドを定義できます。パラメータを Request["session"] として受け取ります。次に、db を呼び出して、session_name に基づいて session_id を取得できます。

以下のコードを使用

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;

}

これがあなたを助けることを願っています....

于 2012-04-07T09:15:35.437 に答える