Почему библиотека классов C# собирается в папку SignedAssemblies
Я хочу использовать определенный пакет NuGet с моим проектом, но у него есть некоторые зависимости, с которыми я не могу работать, и в ветке bitbucket есть некоторый код, который мне нужен. Я решил скопировать код отсюда https://bitbucket.org/RusKnyaz/optimus/wiki/Home и объединить его с моим проектом, чтобы я мог вносить в него изменения и изменять некоторые зависимости.
Я создал новый проект в своем решении, а затем скопировал все файлы классов, так как были проблемы с настройками в файле.csproj в репозитории. Это текущая структура проекта.
Мое решение
- Проект библиотеки первичных классов
- Сайт ASP.NET MVC
- ASP.NET API
- Князь.Оптимус Класс Библиотека
Библиотека первичных классов теперь ссылается на библиотеку классов Optimus так же, как сайты ASP ссылаются на библиотеку первичных классов. Теперь я думаю, что это часть решения, я могу вносить изменения и делать то, что мне нравится. Когда я делаю изменения в проекте Optimus, например, добавляю новый метод в класс, я могу получить доступ к этим методам из библиотеки основного класса, поэтому, кажется, что она ссылается на него правильно.
Все работает хорошо, когда я запускаю его локально, но когда я помещаю его на сервер сборки, он ломается ("Тип или имя пространства имен" Knayaz "не существует…" и т. Д.). Я не могу отладить код правильно. Когда я строю решение, DLL появляется в \obj\Debug\SignedAssemblies
, Когда я запускаю код и выполняю его, VS 2017 не вмешивается ни в один из методов, которые входят в проект Optimus. Это почти как ссылка на стандартную DLL NuGet и не позволяет мне увидеть код внутри.
Что я здесь не так сделал? Я попытался построить этот проект отдельно и просто включить встроенную библиотеку DLL в проект библиотеки основных классов, но это тоже не работает.