我正在尝试在sqlite中进行登录查询,但无法转换AsyncTableQuery
中的boolean
public bool queryLogIn(string userNameLogIn,string passwordLogIn)
{
var query=database.Table<Users>().Where(i => i.UserName == userNameLogIn && i.Password == passwordLogIn);
if (query == true)//There is error
{
return true;
}
else
{
return false;
}
}
答案 0 :(得分:1)
Where
会返回iqueryable
Users
。您需要Any
而不是确定序列的任何元素是否满足条件,并且因为它的返回类型是bool,您可以在if
语句中使用它:
var query=database.Table<Users>().Any(i => i.UserName == userNameLogIn
&& i.Password == passwordLogIn);
编辑:或者在Any
中使用if
:
var query=database.Table<Users>().Where(i => i.UserName == userNameLogIn
&& i.Password == passwordLogIn);
if (query.Any())
{
return true;
}
答案 1 :(得分:1)
您可以使用FirstOrDefault功能登录成功。
{{1}}