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 ...