私のアプリケーションは、依存関係としてSystem.Data.SqlServerCe4.0.0.0を持つライブラリプロジェクトを参照しています。
アプリをプライベートデプロイしようとしていますが、System.Data.SqlServerCe4.0.0.1が必要です。
そこで、System.Data.SqlServerCe 4.0.0.1が出力ディレクトリ(実行可能ファイルと同じフォルダー)にコピーされるようにアプリを設定し、AssemblyBindingをApp.configファイルに追加しました。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
...
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity
name="System.Data.SqlServerCe.dll"
publicKeyToken="89845dcd8080cc91" />
<bindingRedirect oldVersion="4.0.0.0" newVersion="4.0.0.1" />
<codeBase version="4.0.0.1" href="System.Data.SqlServerCe.dll" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
残念ながら、次のエラーが発生します。
ファイルまたはアセンブリ'System.Data.SqlServerCe、Version = 4.0.0.0、Culture = neutral、PublicKeyToken=89845dcd8080cc91'またはその依存関係の1つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULTからの例外:0X80131040)
質問
実行時にSystem.Data.SqlServerCe4.0.0.0をバージョン4.0.0.1と交換して、プライベート展開を可能にすることは可能ですか?