根据db值重定向到特定页面

时间:2012-08-03 11:03:45

标签: c# asp.net

我有一个类似登录表单的表单,想法是用户输入他的名字和姓氏,我需要检查性别是否为男性,它将重定向到male.aspx,如果性别是女性,它将重定向到female.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");
    }
}

3 个答案:

答案 0 :(得分:1)

试试吧 将数据存储在dataview中后,访问性别列

    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();

答案 1 :(得分:0)

if (System.Convert.ToString(dv.Table.Rows[0]["colName"]) == "Male")
{
Response.Redirect("~/Male.aspx");
}
else
{
Response.Redirect("~/female.aspx");
}

答案 2 :(得分:0)

你可以这样做

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

将其加入目标网页