最近对sqlite感兴趣,就尝试了一下用c#连接,我用的版本是vs2013,默认开发环境是.net4.5,,按照网上的教材,下载了System.Data.sqlite,然后写了下面这个简单的测试代码,
满以为会很正确的执行,结果抛出了这个错误:”未经处理的异常: System.IO.FileLoadException: 混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。在 sqlite3.Program.Main(String[] args)“
- sqliteConnection.CreateFile(".\\a.db");//创建sql文件
- sqliteConnection con = new sqliteConnection();//建立连接
- sqliteConnectionStringBuilder sqlstr = new sqliteConnectionStringBuilder();//构建连接字符串
- sqlstr.DataSource = ".\\a.db";
- sqlstr.Password = "irelia";
- con.ConnectionString = sqlstr.ToString();
- con.Open();//打开连接
- con.Close();//关闭连接
解决办法:
在app.config文件中,找到startup这个节点,改成如下:
- <?xml version="1.0" encoding="utf-8" ?>
- <configuration>
- <startup useLegacyV2RuntimeActivationPolicy="true">
- <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
- </startup>
- </configuration>
或者去这个项目的新窝 http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki