A partir de ce matin sans aucune modification du code du projet, une API Web très simple, un contrôleur et 3 méthodes, avec Swagger, ça ne démarre plus et j'obtiens l'erreur:
Erreur HTTP 500.35 - Plusieurs applications en cours de traitement ANCM dans le même processus
L'observateur d'événements rapporte le message le plus inutile:
Module IIS Express AspNetCore V2: impossible de démarrer l'application '/ LM / W3SVC / 2 / ROOT / docs', ErrorCode '0x80004005'.
Redémarré le système plusieurs fois.
J'utilise Visual Studio 2019, l'application se compile avec succès et il y a quelques minutes, cela fonctionnait bien. Aucun nouveau logiciel n'a été installé, aucun package n'a été ajouté. Essayé aussi nettoyer et reconstruire.
Je viens de modifier le commentaire d'une méthode. Évidemment j'ai essayé aussi de restaurer le commentaire précédent mais je reçois toujours le même message.
Que puis-je faire?
Le noyau net est-il encore trop instable pour être utilisé professionnellement?
MISE À JOUR
Le même code lancé à partir de la même version de Visual Studio mais sur un autre PC fonctionne correctement.
MISE À JOUR 2
Ci-dessous le code de l'application:
startup.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.FileProviders;
using Microsoft.Extensions.Hosting;
using Microsoft.OpenApi.Models;
using System;
using System.IO;
using System.Reflection;
namespace WFP_GeoAPIs
{
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo() { Title = "Geographic APIs", Version = "v1.0.0" });
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.XML";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
c.IncludeXmlComments(xmlPath);
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "swagger-ui")),
RequestPath = "/swagger-ui"
});
app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "GeoAPIs Ver 1.0.0");
c.RoutePrefix = "docs";
c.InjectStylesheet("/swagger-ui/custom.css");
});
}
}
}
Voici le launchsettings.json:
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:51319",
"sslPort": 44345
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "docs",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"WFP_GeoAPIs": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "docs",
"applicationUrl": "https://localhost:5001;http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
mais copier le projet sur un autre PC avec la même version de Visual Studio fonctionne très bien, il semble donc que ce soit un bogue de configuration dans la propriété .NET Core ou VIsual Studio ...
la source
Réponses:
C'est actuellement un bug dans VS2019 - (4 novembre 2019)
1.) Fermez votre solution
2.) Supprimer
applicationhost.config
dans le dossier.vs
ou supprimer tout le.vs
dossierLe
.vs
dossier est généralement à côté de votre fichier de solution.3.) Redémarrez à nouveau votre solution
la source
Grâce à @Lex Li, il m'a donné la solution.
Le problème se trouvait dans le fichier applicationhost.config, le fichier de métabase contenant tous les paramètres du lancement IISExpress par Visual Studio pour exécuter votre application Web.
Pour Visual Studio 2019, ce fichier se trouve dans
Pour une autre version, consultez cet article: où se trouve le fichier de configuration / métabase IIS Express?
sous la section j'avais:
Où il y a un cadre étrange défini par
qui a certainement été ajouté lorsque j'ai essayé de définir comme dossier de démarrage le chemin / docs.
Commentant ce paramètre et un autre à la fin du fichier lié à ce chemin a résolu le problème.
la source
J'ai eu la même erreur lorsque j'ai fait ce qui suit:
Problème:
Étant donné que mes deux sites sont sous "Site Web par défaut", ils utilisent tous les deux DefaultAppPool, qui est la cause de cette erreur. La même erreur se produit lorsque les sites ne sont pas sous "Site Web par défaut" mais utilisent le même pool d'applications.
Solution:
Comme mentionné dans les documents ,
pour moi, ce problème a été résolu lorsque j'ai commencé à utiliser des pools d'applications distincts pour chaque site.
la source