2009-10-09 36 views
1

我有一個廣泛的ASP.NET Sqlite驅動的應用程序,將通過阿帕奇在Mono的幫助下運行。出於測試目的,我創建了一個具有兩個文本框和一個按鈕的應用程序。當文本框填充文本並執行該按鈕時,Sqlite表將在文本框內接收文本。此測試應用程序在Visual Studio中工作。ASP.NET 2.0應用程序與單聲道Sqlite後端

我發佈了測試應用程序並將其放置在apache服務器上。 Sqlite .db文件位於bin文件夾中,並且我的連接字符串直接指向此文件夾。當我運行應用程序時,文本框和按鈕顯示出來,但是當我按下按鈕,我收到以下錯誤:

服務器錯誤「/」應用 System.Data.SQLite.DLL 說明:HTTP 500。處理請求時出錯。

堆棧跟蹤:

System.DllNotFoundException:System.Data.SQLite.DLL在(包裝管理到本機)System.Data.SQLite.UnsafeNativeMethods:sqlite3_open_interop(字節[],INT,IntPtr的&) System.Data.SQLite.SQLite3.Open(System.String strFilename,SQLiteOpenFlagsEnum flags,Int32 maxPoolSize,Boolean usePool)[0x00000]

at System.Data.SQLite.SQLiteConnection.Open()[0x00000] at WebApplication1。 _Default.ExecuteQuery(System.String txtQuery)[0x00000]在WebApplication1._Default.Button1_Click(System.Object sender,System.EventArgs e)[0x00000]

at System.Web.UI.WebControls.Button.OnClick(System.EventArgs e)System.Web.UI.WebControls.Button.RaisePostBackEvent(System.String eventArgument)[0x00000]上的[0x00000]位於System.Web。 UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(System.String eventArgument)[0x00000]

在System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,System.String eventArgument)[0x00000] System.Web.UI.Page.RaisePostBackEvents()[0x00000]在System.Web.UI.Page.ProcessRaiseEvents()[0x00000]

at System.Web.UI.Page.InternalProcessRequest()[0x00000] at System.Web.UI.Page.ProcessRequest(System.Web.HttpContext上下文)[0x00000]

system.data.sqlite.dll文件實際上是在包含sqlite .db文件的bin文件夾中。有誰知道如何解決這個錯誤?

謝謝

DFM

回答

1

本管理的ADO.NET提供程序的版本的SQLite需要本地 sqlite3.dll或Linux共享庫從http://www.sqlite.org它看起來像DLL文件丟失:「DllNotFoundException 「

+0

感謝Andreas - .dll文件位於bin文件夾中。這就是Visual Studio組織發佈的測試應用程序的方式。我應該把它移到別的地方嗎?唯一的問題是這個應用程序通過visual studio運行良好,這意味着它可以看到.dll文件。 謝謝 DFM – DFM 2009-10-13 13:48:08

+0

「apache服務器」是否在Windows或Linux機器上運行? – andreas 2009-10-14 21:18:41

+0

Hello Andreas - 服務器在Linux上運行。 – DFM 2009-10-21 15:54:40

相關問題