Мне нужно перепроектировать один из модулей системы с помощью Asp.Net Core и разместить его на сервере IIS.Итак, мне просто нужно заменить уже существующее приложение ASP.NET Web Forms на API .Net Core.Но сложная часть здесь, где я все еще должен использовать файл (ы) верхнего уровня web.config и получить параметры конфигурации из него.
Я провел небольшое исследование и обнаружил, что это может быть проблемой, потому что механизм конфигурациибыл изменен, и больше не рекомендуется использовать we.config или app.config на основе XML, и вместо этого я должен использовать app.settings: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-2.2
Я нашел эту очень хорошую статью https://wildermuth.com/2018/04/15/Building-a-NET-Core-Configuration-Source окак создать пользовательский источник конфигурации и провайдера, и теперь я могу даже извлечь настройки приложения из локального файла web.config, но все еще испытывает проблему с получением доступа к файлу web.config верхнего уровня.
Когда я делаю это
.ConfigureAppConfiguration((hostingContext, config) =>
{
config
.AddWebConfig("web.config", optional: true)
.AddJsonFile("appsettings.json", optional: true);
})
Я могу успешно найти и проанализировать файл web.config, но когда я пытаюсь найти web.config на более высоком уровне, подобном этому
.ConfigureAppConfiguration((hostingContext, config) =>
{
config
.AddWebConfig("..\\web.config", optional: false)
.AddJsonFile("appsettings.json", optional: true);
})
Я получаю сообщение об ошибке
System.IO.FileNotFoundException: 'Файл конфигурации' .. \ web.config 'не найден и не является обязательным.'
Любая рекомендацияокончание того, как получить доступ к файлу web.config верхнего уровня, было бы очень полезно!
К сожалению, я не могу пропустить эту часть, и это одно из бизнес-требований клиента.