В настоящее время в запуске, у меня есть строка SQL Server выглядит как это:Использование строки соединения с appsettings.json для startup.cs
public void ConfigureServices(IServiceCollection services)
{
var connection = @"Server=servername;Database=database;Trusted_Connection=True;MultipleActiveResultSets=true";
services.AddDbContext<CRAMSContext>(options => options.UseSqlServer(connection));
}
Как использовать то, что в моем appsettings.json:
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Data Source=server;Initial Catalog=database;Trusted_Connection=True;MultipleActiveResultSets=true"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
}
чтобы выглядеть следующим образом в новом ASP.NET 1.0 CORE новой установки, чтобы выглядеть paramertized так:
public void ConfigureServices(IServiceCollection services)
{
var connection2 = new SqlConnection connectionString;
services.AddDbContext<CRAMSContext>(options => options.UseSqlServer(connection2));
}
Al поэтому, если у меня есть другая база данных для теста и qa, как я могу позволить приложению ASP.NET использовать соединение для каждой среды?
Мой класс запуска уже определен в корне так:
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
I get: 'Ошибка: имя« Конфигурация »не существует в текущем контексте». Какой пакет мне не хватает? EDIT: Ничего, это проблема в предварительном выпуске v2. В версии 1.1 стабильной версии все в порядке. – JedatKinports
в файле Startup.cs отсутствует метод IConfiguartionRoot. Назовите его конфигурацией, добавьте доступ к ней, и все готово. –