Я пытаюсь понять, как проверить пользователя в моем приложении, но я не знаю как.
Я хотел бы создать форму с именем пользователя и паролем для входа в приложение (WPF), используя Linq toSql для хранения и проверки имени пользователя и пароля в базе данных, но я не очень много знаю о Linq to Sql, поэтому я застрял в этом сейчас
У меня есть база данных с этими полями "UserID, UserTypeID, имя, фамилия, имя пользователя, пароль, электронная почта"
и здесь есть код, который я использую:
public Window1()
{
InitializeComponent();
}
public bool ValidateApplicationUser(string userName, string password)
{
bool validUser = false;
try
{
// var conn = "Data Source=MAMMA-PC/SQLMAMMA;Initial Catalog=MyWebSite;Integrated Security=True";
DataClasses1DataContext dc = new DataClasses1DataContext();
Table<User> users = dc.GetTable<User>();
var query = from c in dc.Users
where (c.Username == userName.ToLower() && c.Password == password.ToLower())
select c;
validUser = (query != null);
}
catch (Exception ex)
{
if (ex != null)
{
}
}
return validUser;
}
private void mahhh(object sender, RoutedEventArgs e)
{
bool authenticated = true;
// var conn = "Data Source=MAMMA-PC/SQLMAMMA;Initial Catalog=MyWebSite;Integrated Security=True";
DataClasses1DataContext dc = new DataClasses1DataContext();
Table<User> users = dc.GetTable<User>();
var query = from c in dc.Users
where (c.Username == usernameTextBox.Text.ToString() && c.Password == passwordTextBox.Text.ToString())
select c;
/* foreach (User user in query)
{
user.Username = usernameTextBox.Text.Trim();
user.Password = passwordTextBox.Text.Trim();
} */
{
if (usernameTextBox.Text !="" && passwordTextBox.Text != "")
{
authenticated = ValidateApplicationUser(usernameTextBox.Text , passwordTextBox.Text);
}
}
if (!authenticated)
{
MessageBox.Show("Invalid login. Try again.");
}
else
{
MessageBox.Show("Congradulations! You're a valid user!");
// Window2 c = new Window2();
// c.ShowDialog();
this.Close();
}
}
Когда я вставляю пароль и имя пользователя, форма проверяет также неправильные имя пользователя и пароль, поэтому я всегда получаю сообщение «Поздравляем! Ты действительный пользователь!» !!!
У вас есть совет, где я не прав?
Bye