【问题标题】:redirect to specific page based on db value根据 db 值重定向到特定页面
【发布时间】:2012-08-03 20:06:35
【问题描述】:

我有一个类似于登录表单的表单,想法是用户输入他的名字和姓氏,我需要检查性别是否为男性,它将重定向到male.aspx,如果性别如果是女性,它将重定向到女性.aspx,如果名字和姓氏错误或不匹配或不存在,他将再次返回相同的表单。

我做了主要代码,但我不知道如何检查性别以重定向到页面

我还想在下一页显示全名(名字和姓氏)。

这是我的代码。希望我能得到帮助。

protected void log_Click(object sender, EventArgs e)
{
    SqlDataSource sds = new SqlDataSource();
    sds.ConnectionString = ConfigurationManager.ConnectionStrings["myDbConnectionString1"].ToString();
    sds.SelectParameters.Add("firstname", TypeCode.String, this.firstname.Text);
    sds.SelectParameters.Add("lastname", TypeCode.String, this.lastname.Text);
    sds.SelectCommand = "SELECT * FROM [myTb] WHERE [firstname] = @firstname AND [lastname] = @lastname";
    DataView dv = (DataView)sds.Select(DataSourceSelectArguments.Empty);
    if (dv.Count == 0)
    {
        this.lblmsg.Text = "Invalid firstname and lastname!";
        return;
    }
    else
    {
        Response.Redirect("home.aspx");
    }
}

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    试试看 在数据视图中存储数据后,访问性别列

        string gender = dv.Table.Rows[0]["gender"].ToString();
        if (gender == "male")
        {
              Response.Redirect("malepage.aspx");
        }
        else if( gender == "female" )
        { 
              Response.Redirect("femalepage.aspx");
        }
    

    为了得到名字和姓氏,使用这个

     string fname= dv.Table.Rows[0]["firstname"].ToString();
     string lname= dv.Table.Rows[0]["lastname"].ToString();
    

    您可以使用查询字符串或会话将这些传递到第二页。

    Response.Redirect("yourpage.aspx?fname="+fname+"lname="+lname);
    
    // on second page get them as
    string fname = Request.QueryString["fname"];
    string lname = Request.QueryString["lname"];
    
    // or by using session pass these values as
    Session["fname"] = fname;
    Session["fname"] = lname;
    
    // and on the second page get them as
    string firstname = Session["fname"].ToString();
    string lasttname = Session["lname"].ToString();
    

    【讨论】:

      【解决方案2】:
      if (System.Convert.ToString(dv.Table.Rows[0]["colName"]) == "Male")
      {
      Response.Redirect("~/Male.aspx");
      }
      else
      {
      Response.Redirect("~/female.aspx");
      }
      

      【讨论】:

        【解决方案3】:

        你可以这样做

        if(dview.Table.Rows[0]["Gender"].ToString() =="Gender")
        {
        Response.Redirect("Page.aspx?fname="+dview.Table.Rows[0]["fname"].ToString()"&LastName=" + dview.Table.Rows[0]["lname"].ToString());
        
        }
        else
        {
        Response.Redirect("Page2.aspx?fname="+dview.Table.Rows[0]["fname"].ToString()");
        }
        

        在查询字符串中发送名字和姓氏,并通过Request.Querystring将它们加入目标页面

        【讨论】:

          猜你喜欢
          • 2016-10-18
          • 1970-01-01
          • 1970-01-01
          • 2012-06-19
          • 1970-01-01
          • 1970-01-01
          • 2013-04-26
          • 2012-10-22
          • 2010-12-06
          相关资源
          最近更新 更多