メインソリューションでビルドを行うたびに、次の警告が表示されます。
アイテム "microsoft.visualstudio.qualitytools.unittestframework"の発行プロパティを適用できません。
誰かがこれまでにこのようなものを見たことがありますか?これを修正する方法に関するアイデアはありますか?これは、すべての開発者マシンで発生し、TFSビルドサーバーでも発生します。ただし、デバッグモードでのみ表示されます。
メインソリューションでビルドを行うたびに、次の警告が表示されます。
アイテム "microsoft.visualstudio.qualitytools.unittestframework"の発行プロパティを適用できません。
誰かがこれまでにこのようなものを見たことがありますか?これを修正する方法に関するアイデアはありますか?これは、すべての開発者マシンで発生し、TFSビルドサーバーでも発生します。ただし、デバッグモードでのみ表示されます。
回答:
問題はClickOnceに関連しているようです。プロジェクトに移動し、プロジェクトを右クリックして、プロパティをクリックします。[公開]タブに移動し、[アプリケーションファイル]をクリックします。[すべてのファイルを表示]チェックボックスをオンにして、ファイルのリストをスクロールします。最終的に、黄色の感嘆符が付いたファイルに出くわします。このファイルは孤立しており、削除する必要があります。ファイルを右クリックすると、削除オプションが表示されます。
ソリューションをビルドすると、警告は表示されなくなります。
Show all files
ここでの鍵です。
上位投票の回答は現状では完璧ですが、大規模な爆発に対処している私たちには、この別の回答が役立ちます。ファイルレベルでの類似の修正について説明します。
警告は次のような要素によって引き起こされます:
<PublishFile Include="THIS IS USUALLY SOME IMAGINARY DLL">
<Visible>False</Visible>
<Group>
</Group>
<TargetPath>
</TargetPath>
<PublishState>Exclude</PublishState>
<IncludeHash>True</IncludeHash>
<FileType>Assembly</FileType>
</PublishFile>
...警告を発するプロジェクトファイル(.csproj)内。PublishStateの「除外」に注意してください。この要素は「架空のDLLを公開しないでください」と述べています。このようなDLLが発行時にどこにもない場合、これは明らかに不要な命令ですが、発行プロセスはファイルのIDを評価できないため、警告も引き起こします。
PublishFile
PublishStateが "Exclude"である限り、警告で言及されている各展開項目の要素全体を削除できます。PublishStateが "Exclude"のすべての要素を機械的に削除しないでください。警告がなかった場合、ファイルはおそらく発行時に利用可能であり、結果的に発行される可能性があります。警告を取り除きます。