包含方法不起作用

时间:2015-04-25 21:37:36

标签: c# asp.net visual-studio methods compare

使用下面的代码,我想比较UserType,如果它是"学生"我想重定向到学生档案等。

但它总是到达最后一个else语句并写入错误。

returnQuery方法效果很好,因为它返回值"学生"。

String emailID = Session["New"].ToString();
string usertype = returnQuery(
    "select userType from Registration where email = '" + lblEmail.Text + "'");

if (usertype.Contains("Student"))
{         
    Response.Redirect("Profile.aspx?email=" + emailID.ToString());
}
else if (usertype.Contains("Company"))
{ 
    Response.Redirect("CompanyProfile.aspx?email=" + emailID.ToString());
}
else if(usertype.Contains("Admin"))
{
    Response.Redirect("AdminProfile.aspx?email=" + emailID.ToString());
}
else
    Response.Write("Error");

2 个答案:

答案 0 :(得分:0)

如果usertype="Student"您可以使用usertype.Equals("Student");来确定变量。 https://superuser.com/questions/252959/which-is-faster-copying-everything-at-once-or-one-thing-at-a-time是方法。

答案 1 :(得分:0)

我怀疑您正在处理Page Lifecycle问题。在按钮点击的回发事件处理时间内,lblEmail.Text可能不是您所期望的那样。

确认您在处理按钮单击事件之前的任何时候都没有修改lblEmail.Text的内容,并在处理单击事件时验证lblEmail.Text的值。

有关Page Lifecycle的详细信息,请参阅此MSDN文章: https://msdn.microsoft.com/en-us/library/ms178472%28v=vs.100%29.aspx