/ / Visual Studio nadpisuje ustawiony URL w appsettings.json - .net-core, asp.net-core-webapi, appsettings

Visual Studio nadpisuje URL ustawiony w appsettings.json - .net-core, asp.net-core-webapi, appsettings

Obecnie pracuję nad.Net Core WebAPI Project (netcore 2.0) i chcę zdefiniować adres URL, w którym działa moja aplikacja w pliku appsettings.json. Następnie używam następującego kodu w moim pliku Program.cs:

var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json").Build();
var url = config.GetSection("WebAppSettings").GetValue<string>("Url");

var host = new WebHostBuilder()
.UseUrls(url)
.UseIISIntegration()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.ConfigureAppConfiguration((context, configBuilder) =>
{
configBuilder
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddEnvironmentVariables();
})
.ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.SetMinimumLevel(LogLevel.Trace);
})
.UseStartup<Startup>()
.UseNLog()
.Build();

host.Run();

Mój plik appsettings.json:

{
"WebAppSettings": {
"Url": "http://localhost:5023"
}
}

Jednak po uruchomieniu aplikacji jest to jedynedostępne na porcie 5022 (wcześniej ustawiłem to, ale później zmieniłem na 5023). Kiedy zaglądam do moich właściwości projektu i przechodzę do podmenu "Debugowanie", wskazuje on 5022 jako port. Próbowałem usunąć tę właściwość, ale jest to wymagane pole.

Jak mogę zmusić Visual Studio do użycia portu, który ustawiłem w pliku appsettings.json, bez skracania moich ustawień?

Odpowiedzi:

1 dla odpowiedzi № 1

Używa IIS Express launchSettings.json, która jest ustawiana za pomocą wspomnianych ustawień właściwości projektu. UseUrls dotyczy tylko programu Visual Studio / IIS Express.