Primeiros passos com appsetting.json
Se precisar de mais informações, acesse documentação oficial da microsoft
Configuração simples
Adicione este texto ao appsettings.json
{
"key1": "value1",
"key2": 2,
"subsectionKey": {
"suboption1": "subvalue1"
}
}
Agora você pode usar esta configuração em seu aplicativo, desta forma
public class Program
{
static public IConfigurationRoot Configuration { get; set; }
public static void Main(string[] args = null)
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
Configuration = builder.Build();
Console.WriteLine($"option1 = {Configuration["key1"]}");
Console.WriteLine($"option2 = {Configuration["key2"]}");
Console.WriteLine(
$"option1 = {Configuration["subsectionKey:suboption1"]}");
}
}
Usando o objeto de configuração para configurações
Crie uma classe como uma classe abaixo
public class MyOptions
{
public MyOptions()
{
// Set default value, if you need it.
Key1 = "value1_from_ctor";
}
public string Key1 { get; set; }
public int Key2 { get; set; }
}
Então você precisa adicionar este código à sua classe de inicialização
public class Startup
{
// Some default code here
public IConfigurationRoot Configuration { get; set; }
public void ConfigureServices(IServiceCollection services)
{
// Adds services required for using options.
services.AddOptions();
// Register the IConfiguration instance which MyOptions binds against.
services.Configure<MyOptions>(Configuration);
}
}
Então você pode usá-lo em seus controladores de uma maneira como a apresentada abaixo
public class TestController : Controller
{
private readonly MyOptions _optionsAccessor;
public TestController (IOptions<MyOptions> optionsAccessor)
{
_optionsAccessor = optionsAccessor.Value;
}
public IActionResult Index()
{
var key1 = _optionsAccessor.Key1 ;
var key2 = _optionsAccessor.Key1 ;
return Content($"option1 = {key1}, option2 = {key2}");
}
}