vs 2008 0nXPsp3で構築されたwinformアプリケーションを展開しています。
プロジェクトのルートフォルダと選択したプロパティにドロップした空のスキーマを使用してデータベースを作成しましたBuild Action
:Embedded ResourcesとCopy to Output directory
:Copyalways。これで、app.config connectionStringセクションにconnectionstringを含める代わりに、appSetting
:key
="database";にエントリを配置します。value
= "mydb.db; Version=3"。
だからconnectionString
私の使用を作成するために:
SQLiteConnection con = new SQLiteConnection("Data Source=" + Path.Combine(Application.StartupPath, ConfigurationManager.AppSettings["database"]));
すべてが正常に機能し、セットアッププロジェクトでアプリをパッケージ化しました。アプリをインストールした後、データベースが見つからず、データベースをApplication Folder
セットアッププロジェクトのにコピーして機能させる必要がありました。
私が思ったのは、dbはapp dllにあるはずですが、copy always
アクセスできません。では、正確に何を間違えたのでしょうか。
ルートデータベースに接続する必要があったのではないかと思います。Application.StartupPath
しかし、私はここでベストプラクティスを求めています。これは、私が行ったことは機能しているものの、それでも回避策のように見えるため、誰かが彼の経験を私と共有できますか?読んでくれてありがとう