J'ai un projet que j'ai sur TFS en ligne. Lorsque j'essaie de construire le projet, j'obtiens l'erreur suivante:
Code de gravité Description Ligne de fichier du projet Erreur La tâche "Microsoft.CodeAnalysis.BuildTasks.Csc" n'a pas pu être chargée à partir de l'assembly C:\Utilisateurs\Bryan\Source\Espaces de travail\TestProject\ContosoUniversity\packages\Microsoft.Net.Compilers.1.0.0\build ..\tools\Microsoft.Build.Tasks.CodeAnalysis.dll. Impossible de charger le fichier ou le fichier d'assembly: /// C:\Utilisateurs\Bryan\Source\Espaces de travail\TestProject\ContosoUniversity\packages\Microsoft.Net.Compilers.1.0.0\tools\Microsoft.Build.Tasks.CodeAnalysis.dll 'ou l'une de ses dépendances. Impossible de trouver le fichier. Confirmez que la déclaration est correcte, que Assembly et toutes ses dépendances sont disponibles et que la tâche contient une classe publique qui implémente Microsoft.Build.Framework.ITask. Université Contoso
Cela at-il quelque chose à voir avec Azure qui ne prend pas en charge ASP.NET 4.6?
Voici la solution pour moi. À l'aide du gestionnaire de packages de Nuget, supprimez ces deux packages s'ils sont référencés:
Microsoft.CodeDom.Providers.DotNetCompilerPlatform
Microsoft.Net.Compilers
Après cela, lancez une reconstruction. Cela garantissait que la compilation n'essayait pas d'utiliser un exe de compilation spécifique. Cliquez ici pour la différence par rapport à la révision précédente
Non, cela n’est pas lié à Azure Web Apps ne prend pas en charge ASP.NET 4.6. En fait, vous obtenez ce message d'erreur car les packages NuGet sont archivés dans le contrôle de version.
Donc, vous devez supprimer le dossier TestProject\ContosoUniversity\packages de TFS et générer à nouveau. Voir: La tâche BuildTasks.Csc n'a pas pu être chargée à partir de l'assembly?
J'ai eu le même problème il y a quelque temps, pour le réparer:
Dans mon cas, le problème a été résolu en mettant à jour les deux packages Nuget ci-dessous vers la dernière version:
Microsoft.CodeDom.Providers.DotNetCompilerPlatform
Microsoft.Net.Compilers
Si vous regardez le fichier en référence, il vous dirigera vers un emplacement de paquet. Il s'avère que les paquets NuGet sont cassés
Pour résoudre: vous devez simplement supprimer ce dossier de packages (généralement sous nom du projet\nom du projet\packages. ), puis, lors de la construction, Nuget restaurera tous les packages requis.
Supprimer le dossier des packages ou son contenu, nettoyer, reconstruire résout le problème pour moi.
Je devais mettre à jour tous mes paquets Nuget sur ma boîte de développement, puis archiver à nouveau le projet dans TFS.
Pour plus de tranquillité d'esprit, j'ai supprimé le dossier packages dans le dossier de compilation de Team City.