在ASP.NET Core 3.1中,launchSettings.json
文件用于配置应用程序的启动设置,包括applicationUrl
属性。要从启动类访问launchSettings.json
中的applicationUrl
属性,可以通过以下步骤实现:
launchSettings.json
文件位于项目的根目录下,用于定义不同环境下的启动配置。每个配置文件包含一个或多个配置文件(profiles),每个配置文件定义了启动应用程序所需的设置,如URL、环境变量等。
launchSettings.json
文件中的配置文件通常包括以下类型:
在多环境部署时,使用launchSettings.json
可以方便地切换和管理不同环境的启动配置。
applicationUrl
要从ASP.NET Core 3.1的启动类访问launchSettings.json
中的applicationUrl
属性,可以使用以下方法:
IConfiguration
接口读取launchSettings.json
文件中的配置。applicationUrl
:从配置中提取applicationUrl
属性。using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using System;
namespace YourNamespace
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((context, config) =>
{
var env = context.HostingEnvironment;
if (env.IsDevelopment())
{
config.AddJsonFile("Properties/launchSettings.json", optional: true, reloadOnChange: true);
}
})
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
public static string GetApplicationUrl(IConfiguration configuration)
{
var environmentName = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
var profile = configuration.GetSection("profiles").GetProfiles().FirstOrDefault(p => p.Name == environmentName);
if (profile != null && profile.Properties.ContainsKey("applicationUrl"))
{
return profile.Properties["applicationUrl"].Value.ToString();
}
return null;
}
}
}
CreateHostBuilder
方法中,通过ConfigureAppConfiguration
方法读取launchSettings.json
文件。applicationUrl
:在GetApplicationUrl
方法中,从配置中提取当前环境的applicationUrl
属性。通过上述方法,你可以从ASP.NET Core 3.1的启动类中访问launchSettings.json
中的applicationUrl
属性。
领取专属 10元无门槛券
手把手带您无忧上云