ClickOnce でデプロイするアプリケーションを開発しています。.NET 4.5 から .NET 4.0 にダウングレードし、不適切な参照を修復して置き換えた後、展開パッケージに問題が発生しました。一部のファイルは、最も重要なことSystem.Net.Http.dll
として、アプリケーションと共にデプロイされません。私はいくつかのチェックを行いましたが、なぜこれが正確に起こるのかを結論づけることはできません. 私の疑いは、このアセンブリがターゲットマシンに既に存在することを期待してパッケージが作成されていることです。ターゲット フレームワークが .NET 4.5 の場合、これは妥当ですが、.NET 4 になった今はそうではありません。奇妙なことに、System.Net.Http.Extensions.dll
正しく展開されます。
設定とバージョン番号は両方のファイルで同じです。
参照は同じパッケージに対して行われます:
<Reference Include="System.Net.Http, Version=2.2.13.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Net.Http.2.2.13\lib\net40\System.Net.Http.dll</HintPath>
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="System.Net.Http.Extensions, Version=2.2.13.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\Microsoft.Net.Http.2.2.13\lib\net40\System.Net.Http.Extensions.dll</HintPath>
</Reference>
ターゲット プラットフォームは .NET 4 であり、展開の前提条件も .NET 4 と KB の更新です。
ファイルはアプリケーションファイルダイアログにも表示されません:
何か案は?他のすべてが失敗した場合は、アセンブリをコンテンツ ファイルとして展開しようとするかもしれません。参照を削除して再度追加しても違いはありませんでした。