在 ASP.NET Core 中,appsetting.json 是一种配置文件,其中可以定义应用程序的配置项,在运行时可以轻松地对其进行更改。在 appsetting.json 中定义的变量,可以通过注入 IConfiguration 接口,通过索引器或 GetSection 方法访问到其值。以下是一个示例:
appsetting.json 文件中的定义:
{ "AppSettings": { "ConnectionStrings": { "DefaultConnection": "Server=.;Database=mydb;Integrated Security=True" }, "SomeSetting": "myvalue" } }
在 Startup.cs 文件中的代码:
public void ConfigureServices(IServiceCollection services)
{
// 添加配置服务
services.AddOptions();
// 配置 AppSettings 节点
services.Configure
在 AppSettings 类中,定义需要使用的变量:
public class AppSettings { public ConnectionStrings ConnectionStrings { get; set; } public string SomeSetting { get; set; }
public class ConnectionStrings
{
public string DefaultConnection { get; set; }
}
}
在需要使用配置的代码中,通过依赖注入获得 AppSettings 类实例,并获取其中定义的变量的值:
public class MyController : Controller { private readonly AppSettings _appSettings;
public MyController(IOptions appSettings)
{
_appSettings = appSettings.Value;
}
public IActionResult MyAction()
{
var connectionString = _appSettings.ConnectionStrings.DefaultConnection;
var someSettingValue = _appSettings.SomeSetting;
// 使用获取到的配置值进行操作
return View();
}
}
使用这种方法,可以轻松地从 appsetting.json 中获取到配置,达到变量与实际值交换的目的。