FilenotfoundException на ресурсе при выполнении с внешнего пути
-
01-10-2019 - |
Вопрос
Проблема, которую мы испытываем, была замечена в Msbuild. У нас есть исполняемый файл в задаче, которая бросает файлFoundException. Это LoadData.exe использует Nibernate для инициализации данных, поэтому в корне проекта есть файл nhibernate.config.
Свойства на конфиге устанавливаются на контент / копию всегда. Я могу подтвердить, что на сборке этот конфигурационный файл копируется в выходной каталог.
В окне консоли вы можете запустить этот исполняемый файл из каталога Bin / Debug, и он будет работать без ошибки. Снаружи этого каталога вы получаете FileNotFoundException в файле конфигурации.
Ошибка указывает, что Nibernate.config загружается относительно, где мы выполняем MSBuild в каталоге сборки, а не каталог LoadData.exe. Почему это? Разве мы не можем сделать это абсолютным для EXE?
Есть ли настройка постройки для этого?
Решение
Измените свой код, чтобы загрузить файл из расположения вашей сборки.