В моем Startup.cs файла У меня есть следующий:не умеет читать настройки из файла JSON в Startup.cs
public Startup(IHostingEnvironment env)
{
// Set up configuration sources.
var builder = new ConfigurationBuilder()
.AddJsonFile("appsettings.json")
.AddEnvironmentVariables();
Configuration = builder.Build();
}
public IConfigurationRoot Configuration { get; set; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
var fooValue = Configuration.Get("foo");
// Add framework services.
services.AddMvc();
}
И в моем файле appsettings.json У меня есть { "foo": "bar" }
Позже в моем классе запуска у меня есть:
public void ConfigureServices(IServiceCollection services)
{
var fooValue = Configuration.Get("foo");
// Add framework services.
services.AddMvc();
}
Я стараюсь смотреть на значение изменения fooValue в моем Locals отладчик, установив контрольную точку на ней (VS2015 с расширениями ASP.NET 5), но я получаю следующее сообщение об ошибке, когда я ступаю на него:
исключение типа «System.InvalidOperationException» произошло в Microsoft .Extensions.Configuration.Binder.dll, но не обрабатывался в коде пользователя
Дополнительная информация: Невозможно создать экземпляр типа «System.String», поскольку отсутствует открытый конструктор без параметров.
Я после MVA Configuring Data at 18m 53s
Я пытался создать config.json файл, как в примере, но шаблон, кажется, изменились, и это не поможет в любом случае.
Должен ли я иметь возможность получать информацию о конфигурации из .json-файлов, подобных этому?
Вот аналогичный вопрос с рабочим примером: http://stackoverflow.com/a/32044957/390421 (который включает загрузку json-данных и доступ к ней через вызов config.Get().) – MartijnK
Кроме того, вы можете найти больше примеров о том, как получить доступ к вложенным свойствам json здесь: http://whereslou.com/2014/05/23/asp-net-vnext-moving-parts-iconfiguration/ – MartijnK