Microsoft.Extensions.Configuration
, как и другие пакеты в пространстве имен Microsoft.Extensions
(например, Опции или DependencyInjection ), являются пакетами, которые были созданы как часть базовая структура ASP.NET. Однако способ построения ASP.NET Core и всех связанных с ним пакетов очень модульный, поэтому все библиотеки можно использовать в контексте ASP.NET Core или без него.
Вы должны понимать эти пакеты как библиотеки. Они включены в ASP.NET Core, поскольку фреймворк строит поверх них , но если вам не требуется веб-фреймворк ASP.NET Core, вы все равно можете использовать эти библиотеки отдельно без какого-либо упоминания о ASP. NET Core. Именно поэтому они живут внутри пространства имен Microsoft.Extensions
вместо Microsoft.AspNetCore
: это совершенно разные проекты. Разумеется, разработка этих пакетов осуществляется командой ASP.NET Core, и решения по разработке ASP.NET Core влияют на эволюцию этих пакетов расширения; но команда очень осторожна с этими пакетами, чтобы не повлиять на общее использование.
Так что, как говорится, как вы используете эти пакеты? Как и любая другая библиотека, вы просто добавляете ссылку на NuGet. Поскольку Microsoft.Extensions.Configuration
является библиотекой base , которая не имеет средств для загрузки файлов, вам также потребуется Microsoft.Extensions.Configuration.Json
, если вы хотите загрузить файлы JSON.
Но тогда это действительно просто:
var configuration = new ConfigurationBuilder()
.AddJsonFile("config.json")
.Build();
// retrieve configuration values
Console.WriteLine(configuration["foo"]); // bar
Console.WriteLine(configuration["baz:bar"]); // qux
Для этого примера config.json
выглядел так:
{
"foo": "bar",
"baz": {
"bar": "qux"
}
}
Так что вы можете просто загрузить конфигурацию следующим образом. Обязательно проверьте документацию . Возможно, речь идет о конфигурации, используемой внутри ASP.NET Core, но все еще применяются базовые концепции (например, , как выглядят пути конфигурации , или , как работает привязка ).
Наконец, обратите внимание, что это действительно просто для конфигурации. Загрузка данных из JSON - это только один из многих источников конфигурации, которые вы можете использовать с Microsoft.Extensions.Configuration
. Но независимо от того, какого провайдера вы будете использовать, вы получите тот же формат конфигурации, который имеет понятия разделов и основных путей.
Если вы пришли к пакету, когда искали, как анализировать JSON, то, скорее всего, вы ищете не тот инструмент. Если вы хотите проанализировать JSON для получения правильной структуры данных, как вы использовали бы при использовании JSON в качестве способа сериализации данных, вам следует взглянуть на что-то другое. Наиболее распространенное решение для синтаксического анализа JSON (также сериализации) использует Json.NET , который является очень мощным и гибким инструментом для работы с любыми JSON-данными.