Создание .NET Framework (4.7.2) службы Windows и попытка сослаться на несколько библиотек классов, ориентированных на .net стандарт 2.0
Я пытаюсь использовать более новые методы конфигурации с ConfigurationBuilder.например.
config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional:false)
.Build();
Когда я пытаюсь запустить службу для отладки, она не запускается, и я получаю это в журнале приложений Windows
Версия Framework: v4.0.30319 Описание: Процесс был прерван из-за необработанного исключения.Информация об исключении: System.IO.FileLoadException
Файл (s) appsettings находится в целевой папке, но сборщик конфигурации не может загрузить их?
Я ссылаюсь на всепакеты:
Microsoft.Extensions.Configuration
Microsoft.Extensions.Configuration.Abstractions
Microsoft.Extensions.Configuration.Binder
Microsoft.Extensions.Configuration.Json
Microsoft.Extensions.FileProviders.Physical
[ обновление ]Хотя это связано с некоторыми из связанных вопросов, которые были предложены как дубликаты, это не то же самое.Я не публикую в Azure и не делаю этого из основного веб-приложения .net.Это из проекта службы Windows, в котором работает .net Framework 4.7
Сначала я подумал, что у него возникли проблемы с НАЙТИ файлов конфигурации json, но на самом деле это исключение FileLoadException https://docs.microsoft.com/en-us/dotnet/api/system.io.fileloadexception?view=netframework-4.8
, котороекажется, указывает на код, найденный файл, но просто не может открыть его?Странно, тем более что я работаю как локальный админ.
[обновление] Если я не могу понять это, я собираюсь в следующий раз попытаться создать свой сервис, не с .net framework 4.7, а с ядром .net и использовать пакет совместимости Windows, как в этом примереhttps://www.pmichaels.net/2019/01/08/creating-a-windows-service-using-net-core-2-2/