J'ai une application ASP.NET Core 3.0 préexistante qui est déployée avec succès sur un Azure App Service (à l'aide du AspNetCoreModuleV2
module). Après la mise à niveau de l'application vers (version d'aujourd'hui) ASP.NET Core 3.1 , l'application se construit et s'exécute correctement sur ma version locale d' IIS Express . Lorsque j'essaie de publier sur Azure App Service à l'aide de (la version actuelle de) Visual Studio 16.4 , cependant, je reçois l'erreur suivante:
Le fichier d'actifs 'C: \ Project \ obj \ project.assets.json' n'a pas de cible pour '.NETCoreApp, Version = v3.0'. Assurez-vous que la restauration a été exécutée et que vous avez inclus «netcoreapp3.0» dans TargetFrameworks pour votre projet.
Remarques
- Tout
<PackageReference>
« s àMicrosoft.AspNetCore
,Microsoft.EntityFrameworkCore
etMicrosoft.Extensions
ont été mis à jour3.1.0
- J'ai nettoyé ma solution et même supprimé mon
obj
dossier pour m'assurer qu'il n'y a pas de références persistantes. - Cette erreur est générée à partir de la
3.1.100
version deMicrosoft.PackageDependencyResolution.targets
.
J'obtiens que quelque chose est toujours accroché aux dépendances .NET Core 3.0 . Mais on ne sait pas pourquoi cela ne cause que des problèmes lors du déploiement. Sont Azure service App est pas encore prêt pour .NET 3.1 de base ? Ou est-ce un problème avec les cibles de résolution des dépendances?
asp.net-core-3.1
. Je n'avais pas la réputation nécessaire pour créer un nouveau tag.<TargetFramework>
paramètre dans lepubxml
profil que Visual Studio repose sur, que j'espacés sur. Oops! Changer cela pournetcoreapp3.1
correspondre à lacsproj
cible résout le problème immédiat. (Cela introduit un nouveau problème avec Azure App Service lui-même déclenchant sur la cible, mais qui peut probablement être résolu en utilisant un déploiement autonome, similaire au lien que vous avez fourni.) Merci de m'avoir pointé dans la bonne direction!Réponses:
Le problème immédiat, tel qu'il a été identifié dans la question initiale, concerne le fait qu'il y a deux endroits où
<TargetFramework>
se situe:csproj
)pubxml
)Le
<TargetFramework>
doit être mis à jour dans deux emplacements et doivent correspondre exactement . Sinon, la publication ne pourra pas trouver ses cibles dans leproject.assets.json
fichier, qui est construit en fonction de<TargetFramework>
dans lecsjproj
fichier.Éditeur de texte
Pour effectuer cette modification via un éditeur de texte,
~/Properties/PublishProfiles
dossier.*.pubxml
vous souhaitez modifier.<TargetFramework>
ànetcoreapp3.1
:Visual Studio 2019
Pour effectuer cette modification via le IDE de Visual Studio 2019 ,
netcoreapp3.1
, cliquez sur l'icône de modification à côté.netcoreapp3.1
.Merci encore à @PanagiotisKanavos de m'avoir pointé dans la bonne direction (voir commentaires sur le fil d'origine).
la source
pubx
fichier comme vous l'avez expliqué, il était toujours sur 3.0. Très frustrant. Honnêtement, je n'ai eu que des bugs et des problèmes d'arrêt étranges, obscurs et complètement complets depuis la sortie de VS 16.3 et .NET Core 3.0. Merci encore!HTTP Error 500.30 - ANCM In-Process Start Failure
message de mon message d'origine. Auparavant, cela nécessitait la publication d'une distribution entièrement autonome de votre application. (Cela dit, il y a généralement un décalage de 2 à 3 jours entre la suppression d' une nouvelle version de .NET Core et son intégration dans l' environnement Azure App Service , il est donc utile d'en être informé dans les futures mises à jour.)Ouvrir le dossier du projet;
Ouvrez le fichier FolderProfile.pubxml puis changez la version 3.0 en 3.1
netcoreapp3.1
Enfin, reconstruisez votre application avant de la publier
la source
pubxml
fichier manuellement, et surtout compte tenu de la maladresse de modifier ces valeurs via l' interface graphique de Visual Studio 2019 . J'ai intégré ces détails dans ma réponse d'origine, cette option est donc explicitement expliquée. Je vous remercie!changement
travaille pour moi.
la source
Microsoft.AspNetCore
bibliothèques doivent être mises à jour3.1.0
conformément aux notes de publication de Microsoft v3.1. Votre approche peut être un correctif valide pour des problèmes similaires dans ASP.NET Core 2.2 , en supposant que l'erreur n'a pas été causée par une incompatibilité entre vos fichierscsproj
etpubx
, comme c'était le cas dans mon cas.