Связанный проект получает "потерянный" во время компиляции

У меня есть решение С# с двумя проектами: служба (основной проект) и регистратор. Служба использует классы из регистратора. Я добавил ссылку на проект журнала в рамках проекта службы. Во время разработки автозаполнение работает нормально: классы журналов видны, ссылки, которые я использую, соответствующим образом окрашиваются.

Я перестраиваю решение, и все идет не так. Ссылки больше не распознаются: "Имя" Ведение журнала "не существует в текущем контексте", а классы больше не существуют в автозаполнении. Удаление и повторная привязка ссылки возвращает меня к базовому состоянию наличия видимых для автозаполнения идентификаторов.

Я перезагрузил, очистил все кеши, убедился, что это единственный экземпляр VS 2010, запущенный на моей машине.

Есть ли что-то очевидное (очевидно), которое мне не хватает?

Ответ 1

Проверьте типы сборки каждого проекта в свойствах проекта - я ставлю, что один или другой будет настроен на создание против .NET XX - Client Profile.

С несогласованными версиями, особенно с одним из Client Profile, а другой нет, тогда он работает во время разработки, но не во время компиляции. Настоящая добыча.

В Visual Studio 2010 для меня есть что-то смешное, которое позволяет настраивать проекты, казалось бы, случайным образом на Client Profile, иногда, когда я создаю проект, а иногда и через несколько дней. Вероятно, некоторые сочетания клавиш я случайно попал...