0

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

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

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

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

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");
    }
}
4

3 回答 3

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();
于 2012-08-03T11:08:02.847 回答
0

You can do like this

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

Send First Name and Last Name in a querystring and join them in the destination page by Request.Querystring

于 2012-08-03T11:20:34.990 回答
0
if (System.Convert.ToString(dv.Table.Rows[0]["colName"]) == "Male")
{
Response.Redirect("~/Male.aspx");
}
else
{
Response.Redirect("~/female.aspx");
}
于 2012-08-03T11:11:01.387 回答