Использовать нужный appsettings при публикации IIS
При публикации сайта на сервер мне приходится вручную копировать appsettings настройки
из файла appsettings.Developpement
в файл appsettings
. Как и где можно контролировать эту часть?
приложение Blazor Web
Поделюсь подробно, как я сделала:
Использую сервис
для appsettings
, сейчас не смогу найти ссылку, где именно нашла это решение. Пример класса сервис
namespace VashProject.AppSettings
{
public static class ApplicationServicesSettings
{
public const string MySettings = "MySettings";
public static Class MyClassValue { get; set; } = new MyClassValue();
}
public class MyClassValue
{
public string SomeValue { get; set; }
}
}
Чтобы было ясней, что есть что, добавлю appsettings
{
"MySettings": {
"SomeValue": "🤓",
}
}
Ну и затем в файле Program
:
builder.Configuration.GetSection(ApplicationServicesSettings.MySettings).Bind(ApplicationServicesSettings.MyClassValue);
Ну и чтоб вызвать:
string someValue = ApplicationServicesSettings.MyClassValue.SomeValue;
Что касается самого файла, я просто создала файл с соответствующей средой названия. Release
Если Вы обратите внимание красный кружок рядом с файлом appsettings
он говорит о том, что файл я не загружаю при коммитах
(github, devAzure и т.д.), для этого я просто добавила gitignore
при создании проекта на платформе и в конце файла добавила строчку.
# Remove developpement configuration files
**/appsettings.*.json
а тут тоже много интересного и тут,
Покажите на внятном примере, как вы настройки куда пишете, чтоб после публикации находилось все и работало.