在Xamarin表单中,我尝试使用MVVM
来创建登录表单。当我编写代码时,没有错误,但是没有给出期望的输出。
public Command Login
{
get
{
return new Command(() =>
{
var d = database.loggin(Usernamelogin, Passwordlogin);
if (d != null)
{
if (d.UserName == Usernamelogin && d.Password == Passwordlogin)
{
App.Current.MainPage.DisplayAlert("Notification", "Successfully Login", "Okay");
}
else
{
App.Current.MainPage.DisplayAlert("Notification", "Error Login", "Okay");
}
}
else
{
App.Current.MainPage.DisplayAlert("Notification", "No data", "Okay");
}
});
}
}
这是登录命令
public Register_person loggin(string mail,string pass )
{
return Conn.Table<Register_person>().FirstOrDefault(t => (t.Email == mail && t.Password == pass));
}
我仅在数据库为null语句时得到显示消息。我找不到原因。
答案 0 :(得分:0)
public ICommand Login { get; set; }
然后添加一个构造函数
public LoginViewModel()
{
Login = new Command(Login_Clicked);
}
然后创建一个方法Login_Clicked
private void Login_Clicked()
{
database = new Database();
var Logindata = database.GetUsername(_usernamelogin);
if (string.IsNullOrWhiteSpace(_usernamelogin) || string.IsNullOrWhiteSpace(_passwordlogin))
{
// your code
}
else
{
if (Logindata != null)
{
if (Logindata.UserName == _usernamelogin && Logindata.Password == _passwordlogin)
{
// your code
}
else
{
// your code
}
}
else
{
// your code
}
}
}
linc查询
return Conn.Table<your Table name>().FirstOrDefault(t => t.Email == mail);
我在表格中提取了电子邮件