La réponse la plus votée est parfaite telle qu'elle est, mais ceux d'entre nous qui font face à des explosions plus importantes peuvent bénéficier de cette réponse alternative. Il décrit un correctif analogue au niveau du fichier.
L'avertissement est causé par un élément comme celui-ci:
<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>
... dans le fichier projet (.csproj) émettant l'avertissement. Notez le PublishState "Exclude"; cet élément dit "veuillez ne pas publier la DLL imaginaire"; il s'agit évidemment d'une instruction inutile si aucune DLL de ce type n'est présente au moment de la publication, mais elle provoque également l'avertissement car le processus de publication ne peut pas évaluer l'identité du fichier.
Vous pouvez supprimer l'intégralité de l' PublishFile
élément pour chaque élément de déploiement mentionné dans les avertissements, à condition qu'il ait PublishState "Exclude". Ne supprimez pas mécaniquement tous les éléments avec PublishState "Exclude", car s'il n'y avait pas d'avertissement à ce sujet, le fichier est probablement disponible au moment de la publication et il pourrait finir par être publié - ce qui serait un changement de produit indésirable tant que vous ne vouliez que débarrassez-vous de l'avertissement.