Как сохранить значение в файле конфигурации JSON с помощью Microsoft.Extensions.Configuration?C#

Место общения программистов C#
Ответить
Anonymous
 Как сохранить значение в файле конфигурации JSON с помощью Microsoft.Extensions.Configuration?

Сообщение Anonymous »

Следуя этому примеру, я пытаюсь получить и сохранить значения запускаемого приложения с помощью интерфейса IConfiguration из Microsoft.Extensions.Configuration API. Однако я не нашел способа изменить эти значения в файле JSON настроек.

В качестве примера рассмотрим следующий файл appSettings.json. файл конфигурации:

Код: Выделить всё

"Setting":
{
"Startup":
{
"IsFirstStart": true
}
}
А связанный класс, отвечающий за извлечение:

Код: Выделить всё

public class AppHandler
{
#region fields

// MS heper contains configuration parameters from JSON file
private IConfiguration _appConfiguration = null;

// MS config builder
private IConfigurationBuilder _appBuilder = null;

// Is it software first use
private bool _isFirstStart;

#endregion fields

#region Constructor

private AppHandler()
{
_appBuilder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.dev.json", optional: true, reloadOnChange: true)
.AddEnvironmentVariables();

_appConfiguration = _appBuilder.Build();
}

#endregion Constructor

#region Methods

private AppInitialized()
{
//  Session initialization has been performed & store back the information in 'appSettings.json' file
_appConfiguration["IsFirstStart"] = Convert.ToString(_isFirstStart = false);

/*
* HOW TO SAVE BACK IsFirstStart change into Json file?
*/
}

#endregion Methods
}
Более того, я видел, что класс ApplicationSettings содержит метод Save(). Вместо этого я мог бы реализовать этот класс, но в чем разница и какой из них вы порекомендуете для приложений UWP/WPF?

Подробнее здесь: https://stackoverflow.com/questions/619 ... ons-config
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»