2017-04-17 65 views
0

我正在做一個使用sqlite3數據庫的C#應用​​程序。對於sqlite,我使用的是System.Data.SQLite.dll。問題是在一些系統上程序工作正常,但在其他系統上,它在讀取數據庫時引發System.MissingMethodExceptionc#System.MissingMethodException在sqlite3

這是我使用的閱讀代碼:

using (System.Data.SQLite.SQLiteConnection con = new System.Data.SQLite.SQLiteConnection("data source=" + file_name)) 
{ 
    using (System.Data.SQLite.SQLiteCommand com = new System.Data.SQLite.SQLiteCommand(con)) 
    { 
     con.Open(); 
     com.CommandText = "Select * FROM my_table;"; 

     using (System.Data.SQLite.SQLiteDataReader reader = com.ExecuteReader()) 
     { 
      while (reader.Read()) 
      { 
       Console.WriteLine(reader["field1"] + " : " + reader["field2"] +" : " + reader["field3"]); 

       if(reader["field1"].ToString().Equals("1")) 
       { 
        xlWorkSheetR1.Cells[i, 2] = reader["field1"]; 
        xlWorkSheetR1.Cells[i, 3] = reader["field2"]; 
        i++; 
       } 
      } 
     } 
     con.Close(); 
    } 
} 

這是我得到的錯誤:

enter image description here

你能告訴我是什麼原因造成這異常?以及如何避免它? System.Data.SQLite.dll的

回答

0

檢查

  1. 版本是不同的機器上,這些機器上安裝

  2. .NET框架版本相同

+0

System.Data .SQLite.dll與應用程序一起部署,所以不應該是一個問題。應用程序支持的最低.NET版本高於發生此異常的系統上安裝的版本。但是我做了一個ClickOnce安裝程序和一個獨立的可執行文件(包含所需的依賴項)。我還需要更新系統上的.NET版本嗎? – mrid

+0

您可以列出您正在部署的.NET框架的版本以及部署的機器上的框架版本以及構建該exe的機器。你很可能面臨這裏列出的問題https://connect.microsoft.com/VisualStudio/feedback/details/1097462/missingmethodexception-additional-information-method-not-found-0-system-array-empty – Shinva

+0

該應用程序是目標v4.5和te目前安裝的是v3.5 – mrid

相關問題