0
私のC#コンソールアプリケーションには、MS SQL Server Compactデータベース(.sdfファイル)が組み込まれています。新しいバージョンのアプリケーションがインストールされている場合、このファイルはではなく、を上書きする必要があります。ClickOnceとSQL Server Compactデータベース
.sdf→ファイルのプロパティ→ビルドアクション:どの値を選択する必要がありますか?オプションは、なし、コンパイル、コンテンツ、組み込みリソース、EntityDeploy、ApplicationDefinition、ページ、リソース、SplashScreen、DesignData、DesignDataWithDesignTimeCreatableDataおよびXamlAppDefです。
出力ディレクトリへのコピーは、ビルド時に決定されるものだと思います。私が必要とするのは、ClickOnce setup.exeを.sdfが存在しない場合にのみインストールするように設定することです。ソフトウェアの更新で上書きしてはいけません。出来ますか?どうやって? – haba713
「ファイルが現在存在しない場合はコピーする」はオプションではないので、デバイスの一時的な場所またはファイル名に「常にコピーする」に設定してから、C#コードで.sdfファイルがすでに存在していない場合は、.sdfファイルを適切な場所にコピーします。かなり、私は知っている。 –
接続文字列は 'Data Source = | DataDirectory | \ MyDb.sdf'です。そこでプロジェクトファイル 'MyDb.sbf'の名前を' MyDbEmpty.sdf'に変更し、 'Progam.Main()'の始めに 'MyDb.sdf'ファイルが' ApplicationDeployment.CurrentDeployment.DataDirectory'に存在するかどうかをチェックし、 * not *の場合は、 'MyDbEmpty.sdf'を' MyDb.sdf'にコピーします。 VSデバッグ実行で 'ApplicationDeployment.CurrentDeployment.DataDirectory'にアクセスすると例外がスローされ、処理する必要があります。 Mike Gledhill、助けてくれてありがとう! – haba713