La réponse la plus votée est parfaite en l'état, mais ceux d'entre nous qui sont confrontés à des crises plus importantes peuvent bénéficier de cette réponse alternative. Elle décrit une solution 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 de projet (.csproj) émettant l'avertissement. Remarquez le PublishState "Exclude" ; cet élément dit "veuillez ne pas publier la DLL imaginaire" ; c'est évidemment une instruction inutile si une telle DLL n'existe pas au moment de la publication, mais elle est également à l'origine de l'avertissement car le processus de publication ne peut pas évaluer l'identité du fichier.
Vous pouvez retirer l'ensemble du PublishFile
pour chaque élément de déploiement mentionné dans les avertissements, tant qu'il possède PublishState "Exclude". Ne supprimez pas mécaniquement chaque élément 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 une modification indésirable du produit tant que vous voulez seulement vous débarrasser de l'avertissement.