未能加载文件或程序集“System.Data.SQLite, Version=1.0.65.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139”或它的某一个依赖项。试图加载格式不正确的程序。

解决方案 »

  1.   

    System.Data.SQLite.dll  程序的debug目录有这个文件吗?
      

  2.   

    引用会有这个dll的,如果有,请查看系统是不是64位的?  需要在生成里面设置,目标为x86,编译就可以了
      

  3.   

      我的是32位的 引用 那个dll文件了  debug里面有这个dll
      

  4.   

    那你引用的会不会64的dll?
      

  5.   

    这个我不清楚额  我下载了一个1.03M的dll文件
      

  6.   

    右键项目  把目标平台 cpu   any cpu  设置成 x86
      

  7.   


    http://www.sqlite.org/2013/sqlite-dll-win32-x86-3071700.zip
      

  8.   

    就是 x86的   从新下载了一个 dll 这回没有那个 错误了不过又出现一个新的问题:
    混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。
      

  9.   


    http://www.sqlite.org/2013/sqlite-dll-win32-x86-3071700.zip
    现在出现一个新的问题:
    混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。
      

  10.   

    解决了  遇到上述问题 添加一个配置文件app.config   里面加个节点 <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>
      </startup>
    就行了,以后有这个错误的同志就这么解决就行了
      

  11.   


    还有个问题  我全部弄好了  但是运行程序是 提示SQLite error:no such table: mulu   这是什么情况  我的数据库里有这个表呢  
     string sql = "select id,pid,name from [mulu]";
                SQLiteConnection sqlcon = new SQLiteConnection("Data Source="+System.Windows.Forms.Application.StartupPath+@"\ceshi.db");
                //SqlConnection con = new SqlConnection("server=.;database=GHRQ;uid=sa;pwd=123456");
                sqlcon.Open();
                //SqlDataAdapter sda = new SqlDataAdapter(sql, con);
                //DataSet ds = new DataSet();
                //sda.Fill(ds);
                SQLiteDataAdapter sqlda = new SQLiteDataAdapter(sql, sqlcon);
                DataSet ds = new DataSet();
                sqlda.Fill(ds); //这一步出现的错误
                sqlcon.Close();
                return ds.Tables[0];
      

  12.   


    还有个问题  我全部弄好了  但是运行程序是 提示SQLite error:no such table: mulu   这是什么情况  我的数据库里有这个表呢  
     string sql = "select id,pid,name from [mulu]";
                SQLiteConnection sqlcon = new SQLiteConnection("Data Source="+System.Windows.Forms.Application.StartupPath+@"\ceshi.db");
                //SqlConnection con = new SqlConnection("server=.;database=GHRQ;uid=sa;pwd=123456");
                sqlcon.Open();
                //SqlDataAdapter sda = new SqlDataAdapter(sql, con);
                //DataSet ds = new DataSet();
                //sda.Fill(ds);
                SQLiteDataAdapter sqlda = new SQLiteDataAdapter(sql, sqlcon);
                DataSet ds = new DataSet();
                sqlda.Fill(ds); //这一步出现的错误
                sqlcon.Close();
                return ds.Tables[0];
    虽然不知道你这个不知道什么问题,不过我的连接字符串是  Version=3;New=False;Compress=True;Data Source=" + System.Windows.Forms.Application.StartupPath+@"\ceshi.db" + ";Version=3;New=False;Compress=True;"
      

  13.   

    楼主到编译目录下寻找x86文件夹,把Debug的数据库拷贝到x86的Debug就OK了~
      

  14.   


    http://www.sqlite.org/2013/sqlite-dll-win32-x86-3071700.zip这个dll 引用不了啊~~
      

  15.   

    就是 x86的   从新下载了一个 dll 这回没有那个 错误了不过又出现一个新的问题:
    混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。
    lz你dll去哪里下的~~~