У меня проблема с приложением для входа.Я пытаюсь получить тип пользователя из базы данных на основе имени пользователя.Когда я передаю имя из текстового поля, тип пользователя будет нулевым.В противном случае, когда я объявляю имя вручную, оно будет работать и даст тип пользователя !!!
Это мой код:
public string usertype { get { return label3.Text; } set { label3.Text = value; } }
public string username { get { return txtname.Text; } set { txtname.Text = value; } }
private void Login_Load(object sender, EventArgs e)
{
username=txtname.Text;
label3.Text=Users(username);
}
public string Users(string name)
{
using (SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=Stock;Integrated Security=True"))
{
string sql = "SELECT usertype FROM[dbo].[LoginTable] where UserName =@UserName";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.AddWithValue("@UserName", name);
con.Open();
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
usertype = reader["usertype"].ToString();
}
con.Close();
}
}
return usertype;
}
//Main form to access user type for security
Login login = new Login();
string type=login.usertype; //-----usertype null
Обратите внимание, что я обращаюсь к типу пользователя с user_control
в основной форме, не знаю, если это отличается.