如何计算SQLite查询Xamarin表单的结果?

如何计算SQLite查询Xamarin表单的结果?,xamarin,xamarin.forms,sqlite,json.net,Xamarin,Xamarin.forms,Sqlite,Json.net,我想知道我的SQLite查询需要多少行。问题是我的代码不能进行反序列化以获取总行数。在我的应用程序中,我使用它作为登录方法。“var result=JsonConvert.DeserializeObject>(userData);”中有错误。错误是 Newtonsoft.Json.JsonSerializationException:无法反序列化当前Json对象 var db=DependencyService.Get(); var conn=db.GetConnection(); var ge

我想知道我的SQLite查询需要多少行。问题是我的代码不能进行反序列化以获取总行数。在我的应用程序中,我使用它作为登录方法。“var result=JsonConvert.DeserializeObject>(userData);”中有错误。错误是

Newtonsoft.Json.JsonSerializationException:无法反序列化当前Json对象

var db=DependencyService.Get(); var conn=db.GetConnection(); var getCaf=conn.querysync(“从tblUser中选择*其中UserID=?和UserPassword=?”,Username,Password); 字符串userData=JsonConvert.SerializeObject(getCaf); var result=JsonConvert.DeserializeObject(userData); 如果(result.Count<1) { 发送(这是“Http”,用户名); } 其他的 { Application.Current.MainPage.Navigation.PushModalAsync(new NavigationPage(new main menu()),true); }
我不知道你为什么在这里使用json?这是不必要的

querySync
应返回一个
列表


我刚刚学习了一个教程,不需要返回列表var count=getCaf.count()上有一个错误;错误为“不包含接受第一个类型参数的'Count'的”抱歉,Count是一个属性,而不是一个方法。您的查询将返回一组行,因此将其映射到列表是有意义的。如果您只需要计数,那么有一些方法可以做到这一点,而无需选择并返回所有数据;它成功了
var db = DependencyService.Get<ISQLiteDB>();
var conn = db.GetConnection();

var getCaf = conn.QueryAsync<CAFTable>("SELECT * FROM tblUser WHERE UserID=? AND UserPassword=?",Username,Password);
string userData = JsonConvert.SerializeObject(getCaf);

var result = JsonConvert.DeserializeObject<List<UserData>>(userData);

if (result.Count < 1)
{
   MessagingCenter.Send(this, "Http", Username);
}
else
{
   Application.Current.MainPage.Navigation.PushModalAsync(new NavigationPage(new MainMenu()), true);
}
var getCaf = await conn.QueryAsync<List<CAFTable>>("SELECT * FROM tblUser WHERE UserID=? AND UserPassword=?",Username,Password);
var count = getCaf.Count;