Je viens de mettre à jour à Visual Studio 2017 v15.3
et Core 2.0 SDK
.Visual Studio 2017 v15.3 ne copie pas nlog.config
Je travaille avec Igans Sakalauskas' Net Core Knockout project
, il a été construit avec Core 1.1
dans VS 2017.
https://ignas.me/tech/net-core-knockoutjs-web-application/
J'ai laissé EnableDefaultContentItems
à la valeur par défaut vrai et supprimé les Content Include
déclarations du .csproj
fichier dans le projet WebApplication1.Web
. Il utilise nlog
et il y a un nlog.config
à la racine du projet. Le projet se construit avec succès mais lance un file not found error
lorsqu'il est exécuté. Il cherche le nlog.config
dans le dossier WebApplication1.Web\bin\Debug\netcoreapp1.1
. Si je copie manuellement le fichier, le projet s'exécute et tous les tests passent. Ce que je n'arrive pas à faire, c'est que VS puisse copier le nlog.config
lors de la construction du projet.
Si j'ajoute
<ItemGroup>
<Content Include="nlog.*" />
</ItemGroup>
au .csproj
je reçois l'erreur Duplicate 'Content' items ... The duplicate items were: 'nlog.config'
. https://aka.ms/sdkimplicititems
Si je commente le Contnet Include
et définissez le EnableDefaultContentItems
false
<PropertyGroup>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
</PropertyGroup>
Je reçois un Suppression State Error CS5001 Program does not contain a static 'Main' method suitable for an entry point
Si je reconstitue alors les instructions `contenu inculde » il donne cette erreur:
Duplicate 'Content' items ... The duplicate items were: 'list of files'
erreur
Le Default Content Items
fonctionne avec les fichiers .js
et .cs
dans les sous-dossiers wwwroot
.
Si VS jette l'erreur Duplicate Content
quand je Content Include
un article pourquoi il ne pas copier le fichier sans le Content Include
?
Dans VS 2017 15.3 comment configurer la copie d'un fichier nlog.config
depuis la racine du projet vers un sous-répertoire bin?
Bonjour Daniel.J'étais sur le point de poster ma réponse qui devait mettre en surbrillance dans VS 'nlog.config' et changer le statut' Copy to Output Directory' dans Propriétés qui écrit votre réponse à '.csproj'. Mais vous me battez pour que vous obteniez le vote. Ne répond toujours pas à la question secondaire de savoir pourquoi la définition de 'EnableDefaultContentItems' sur false ne fonctionne pas. Avez-vous une idée à ce sujet? S'il vous plaît faites le moi savoir afin que je sache poser une question séparée si vous ne savez pas. – Joe
@Joe Les problèmes les plus probables sont: 'EnableDefaultCompileItems' n'est pas au bon endroit et n'est pas appliqué ou il y a un problème avec le contenu inclus. Il est plus facile d'éviter tout le problème en supprimant le contenu et en supprimant 'EnableDefaultCompileItems', cela a bien fonctionné pour moi et je n'ai pas trouvé de besoin de' EnableDefaultCompileItems'. –