У меня есть существующее приложение WPF, созданное в Visual Studio 2019 (16.4.5), с большей частью его общего кода, используемого в бэкэнде, в стандартной библиотеке классов. NET. Я пытаюсь запустить новый интерфейс, построенный на Avalonia MVVM, который будет кроссплатформенным. Я успешно создал и запустил приложение Avalonia "Hello World". Однако всякий раз, когда я добавляю какие-либо ссылки на библиотеку классов (даже если я создаю новую стандартную библиотеку классов NET, которая представляет собой не что иное, как шаблон заглушки, созданный VS), я получаю ошибку времени выполнения:
System.IO.FileNotFoundException: 'Could not load file or assembly 'xxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.'
В конце концов я понял, что Visual Studio не добавляет соответствующие записи в deps. json. Все ссылки на проекты, которые я добавляю в свое приложение, не отображаются в deps. json. Если я соберу, я смогу потом добавить их вручную - то есть
},
"ClassLibrary1/1.0.0": {
"runtime": {
"ClassLibrary1.dll": {}
}
... И тогда он запускается просто отлично. Но если я пересоберу, VS, конечно, восстановит deps. json, и эти ссылки на проекты снова будут отсутствовать.
Почему VS не будет правильно добавлять ссылочные проекты в deps. json, который он генерирует?