Start Debugging
2020-11-13 Обновлено 2023-11-05 csharpxamarin-forms Edit on GitHub

Как использовать appsettings.json в Xamarin.Forms

Узнайте, как использовать конфигурационные файлы appsettings.json в Xamarin.Forms, встраивая файл как ресурс и создавая объект IConfiguration.

По сравнению с ASP.NET есть два ключевых отличия:

Для начала добавьте файл appsettings.json в общий (shared) проект. Установите для него Build Action равное Embedded Resource. Добавьте в файл несколько ключей и значений, которые сможем использовать для проверки. Например:

{
  "ChatHubUrl": "https://signalrchatweb.azurewebsites.net/"
}

Далее нужно получить поток ресурса.

Stream resourceStream = GetType().GetTypeInfo().Assembly.GetManifestResourceStream("SignalRChat.appsettings.json");

И использовать его для построения объекта IConfiguration.

var configuration = new ConfigurationBuilder()
                .AddJsonStream(resourceStream)
                .Build();

Теперь, чтобы получить из него значения конфигурации, используйте его как обычный словарь.

configuration["ChatHubUrl"];

Либо можно зарегистрировать его в вашем IoC-контейнере как IConfiguration, внедрить в viewmodel и использовать так же.

Полный пример раньше находился в репозитории Xamarin Forms — SignalR Chat на GitHub, который больше не доступен.

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< Назад