我有以下代码。
string DB_PATH = Path.Combine(ApplicationData.Current.LocalFolder.Path, "Questions.sqlite");
SQLiteConnection dbConn = new SQLiteConnection(DB_PATH);
dbConn.CreateTable<QuestionModel>();
// Some code which insert the records in database from webservices.
List<QuestionModel> questionsList = dbConn.Table<QuestionModel>().ToList();
System.Diagnostics.Debug.WriteLine("List Count " + dbConn.Table<QuestionModel>().ToList().Count);
列表计数总是给我 0 。但是当我使用 WP POWER TOOLS 并从模拟器获取 Questions.sqlite 文件时。它给了我SQLite表中的记录。
我还会在同一个 Questions.sqlite 上查看http://sqlitestudio.pl/中的查询,但这会给我提供应有的记录。
我尝试了其他方式来获取以下代码的记录,但没有一个能够正常工作。
String query = "Select * from QuestionModel;";
questionsList = dbConn.Query<QuestionModel>(query);
System.Diagnostics.Debug.WriteLine("List Count " + questionsList.Count);
答案 0 :(得分:2)
您的分析似乎只有行List<QuestionModel> questionsList = dbConn.Table<QuestionModel>().ToList();
不起作用。
几天前我在WP8上帮助了SQLiteDB中的某个人,这是他的问题:SQLite WP8 StackOverflow
如果将他的代码与代码进行比较,则缺少Model bindind:
db.GetTableInfo("QuestionModel");
并且
db.Table<QuestionModel>().ToList<QuestionModel>();
不重要但是使用list变量来计算debug write,而不是检索列表的两倍questionsList.Count
希望它有所帮助。