Я использую Visual Studio 2005, .NET 2.0
Я еще не совсем уверен, при каких обстоятельствах это происходит, но вот сценарий:
У меня есть решение с такой структурой проекта: библиотечный проект Foo, библиотечный проект Bar, который ссылается на Foo, и библиотечный проект Quux, который ссылается на Foo и Bar.
Сбой компиляции с сообщением об ошибке «Файл метаданных« Foo.dll »не найден» от Bar, а «Файл метаданных« Foo.dll »не найден» и «Файл метаданных« Bar.dll »не может быть найден»). быть найденным "из Quux.
Глядя в мой целевой каталог (у меня есть объединенный целевой каталог для всех 3 проектов), он пуст, поэтому ни один проект вообще не компилируется. Теперь я могу получить сбой Bar и Quux, если Foo не выводит данные. Проблема: почему Foo молча терпит неудачу? В этом нет ошибки, и просто сборка Foo вместо всего решения работает нормально.
Самое смешное, после простого нажатия кнопки сборки снова появляется файл Foo.dll, Bar больше не жалуется, но и не выдает никакого выходного файла, а Quux жалуется на отсутствие Bar.dll. При повторном нажатии кнопки появляется Bar.dll, больше нет ошибок, но нет Quux.dll. Только после повторного нажатия кнопки Quux.dll появляется снова, без ошибок.
Все зависимости проекта установлены правильно, порядок сборки решения говорит о том, что все правильно.
Я даже пытался создать новое решение и новые файлы проекта, а затем снова добавить к ним источники. Радости тоже нет. То же самое происходит.
Я полностью в тупике. Кто-нибудь знает выход из этого беспорядка?