什么是最好的WP7:SQLite或Data.Linq?

时间:2013-10-09 15:23:03

标签: sqlite windows-phone-7

我在我的应用程序中使用SQLite(WP 7.1和Community.CsharpSqlite.SqlLiteClient.WP7.dll程序集)。

当我使用内连接时,SQLite DataReader对象非常慢(大约需要3到5秒来填充包含1000条记录的列表)。

我正在考虑删除SQLite数据库并开始使用“sdf”数据库。

有谁知道为什么SQLite DataReader对象在WP中这么慢?

这是我的示例代码(table1是一个包含5000条记录和5列的表.table2有来自table1的chield记录)

using (SqliteConnection conn = new SqliteConnection(PhoneUtil.ConnectionString))
{
   conn.Open();
   using (SqliteCommand cmd = conn.CreateCommand())
   {
      cmd.CommandText = "select t1.* from table1 as t1 inner join table2 as t2 on t1.id = t2.id where t1.year=2013";

      // the line below is very slow.
      using (SqliteDataReader reader = cmd.ExecuteReader())
      {
         // Here is fast
         while (reader.Read())
         {
            // ...
         }
      }
    }
}

1 个答案:

答案 0 :(得分:0)

WP7的SQlite实现是完全托管代码的事实可能至少部分原因。