返回在循环内设置的全局变量值

时间:2011-09-16 21:28:52

标签: c#

public class loginbal
{
  public static bool   match = false ;

  public bool check(string username, string password)
  {
        logindal LGD = new logindal();
        DataSet ds1= LGD.logincheck(username, password);

        int noofrows = ds1.Tables["login"].Rows.Count;

        for (int i = 0; i < noofrows; i++)
        {
            if ((ds1.Tables["login"].Rows[i]["username_l"].ToString() == username) && (ds1.Tables["login"].Rows[i]["password_l"].ToString() == password))
            {
                match = true;
            }
        }

    return match;
}

我想返回match但是它不受for循环集语句的影响我可以根据for循环值改变匹配并返回方法吗?

1 个答案:

答案 0 :(得分:2)

正如@BrokenGlass@NullUserException所指出的那样,不需要变量match,更不用说静态变量true。如果循环找到匹配,则返回false。如果没有,请返回public bool check(string username, string password) { logindal LGD = new logindal(); DataSet ds1= LGD.logincheck(username, password); int noofrows = ds1.Tables["login"].Rows.Count; for (int i = 0; i < noofrows; i++) { if ((ds1.Tables["login"].Rows[i]["username_l"].ToString() == username) && (ds1.Tables["login"].Rows[i]["password_l"].ToString() == password)) { return true; } } return false; }

{{1}}