我正在部署使用vs 2008 0n XP sp3構建的winform應用程序。使用嵌入式sqlite部署winform應用程序
我創建了空模式的數據庫,我放棄了在項目的根文件夾和性質選用我Build Action
:嵌入式資源和Copy to Output directory
:始終複製。現在,而不是在app.config connectionString部分有連接字符串,我把一個條目在appSetting
:key
=「database」; value
=「mydb.db;版本= 3」。
所以創建我connectionString
我用:
SQLiteConnection con = new SQLiteConnection("Data Source=" + Path.Combine(Application.StartupPath, ConfigurationManager.AppSettings["database"]));
一切工作正常,我打包的應用程序與設置project.Now後,我安裝的應用程序數據庫中找不到,我不得不復制將數據庫設置爲設置項目中的Application Folder
以使其工作。
我認爲數據庫應該是在應用程序的DLL因爲copy always
但我不能訪問它。所以我到底做錯了什麼?
我正在懷疑我應該只是連接到不使用Application.StartupPath
根分貝的意義,但我在這裏要求的最佳實踐使我所做的是工作,但仍然在尋找像解決辦法,所以請任何人都可以與我分享他的經驗? 感謝閱讀
我想這是一個「嵌入文件」問題比SQLite問題更多。 – 2010-04-22 09:38:05
是的,但是sqlite是最嵌入的數據庫之一,所以大多數使用sqlite的人可能知道嵌入database.correct? – 2010-04-22 10:37:55