WEB开发网
开发学院数据库MySQL 孜孜不倦的程序员:SQLite 内幕 阅读

孜孜不倦的程序员:SQLite 内幕

 2010-09-08 00:00:00 来源:WEB开发网   
核心提示: 图 5 使用 System.Data.SQLite staticvoidManagedWrapperMain(){varconnStr=newSQLiteConnectionStringBuilder(){DataSource="persons.sqlite"};using(

图 5 使用 System.Data.SQLite

static void ManagedWrapperMain() 
{ 
 var connStr = new SQLiteConnectionStringBuilder() 
  { DataSource = "persons.sqlite" }; 
 using (SQLiteConnection conn = new SQLiteConnection(connStr.ToString())) 
 { 
  conn.Open(); 
  SQLiteCommand cmd = conn.CreateCommand(); 
  cmd.CommandText = "SELECT COUNT(*) FROM Persons"; 
  var ct = cmd.ExecuteScalar(); 
  Console.WriteLine("Count = {0}", ct); 
 
  cmd = conn.CreateCommand(); 
  cmd.CommandText = "SELECT * FROM Persons"; 
  SQLiteDataReader reader = cmd.ExecuteReader(); 
  DataTable dt = new DataTable(); 
  dt.Load(reader); 
  foreach (DataRow row in dt.Rows) 
  { 
   Console.WriteLine("{0} {1} {2}", row[0], row[1], row[2]); 
  } 
 } 
}

到目前为止一切顺利。 在从 Visual Studio 2005 或 2008 项目运行该代码时,一切都运行良好。 但在从 Visual Studio 2010 执行该代码时,则会出现错误,指出“未处理的异常:System.IO.FileLoadException:混合模式程序集是针对 ‘v2.0.50727’版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集”。对于从未听说过混合模式程序集的人来说,对该术语的解释是同时包含托管 Microsoft 中间语言和本机 x86 程序集指令的程序集。 这当然是一个坏消息,主要体现在两个方面:一方面是很明面的问题,即我们需要代码才能工作;另一方面是,对于混合模式程序集,在 ASP.NET 等其他环境中使用 SQLite 时会出现一些问题。

上一页  3 4 5 6 7 8 9 10  下一页

Tags:孜孜不倦 程序员 SQLite

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接