Da questa mattina senza alcuna modifica al codice del progetto, un'API Web molto semplice, un controller e 3 metodi, con Swagger, non si avvia più e viene visualizzato l'errore:
Errore HTTP 500.35 - Applicazioni in-process multiple ANCM nello stesso processo
Il visualizzatore di eventi segnala il messaggio più inutile:
Modulo I2 Express AspNetCore V2: impossibile avviare l'applicazione "/ LM / W3SVC / 2 / ROOT / docs", codice errore "0x80004005".
Riavviato il sistema più volte.
Sto usando Visual Studio 2019, l'applicazione viene compilata correttamente e pochi minuti fa funzionava bene. Nessun nuovo software è stato installato, nessun pacchetto aggiunto. Ho provato anche pulito e ricostruito.
Ho appena modificato il commento di un metodo. Ovviamente ho provato anche a ripristinare il commento precedente ma ricevo sempre lo stesso messaggio.
Cosa posso fare?
Net Core è ancora troppo instabile per essere utilizzato professionalmente?
AGGIORNARE
Lo stesso codice lanciato dalla stessa versione di Visual Studio ma in un altro PC funziona correttamente.
AGGIORNAMENTO 2
Di seguito il codice dell'applicazione:
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");
});
}
}
}
Ecco il 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"
}
}
}
}
ma copiare il progetto su un altro PC con la stessa versione di Visual Studio funziona bene, quindi sembra che sia un bug di configurazione nella proprietà .NET Core o VIsual Studio ...