У меня есть решение, которое содержит несколько проектов. Один из тестовых проектов использует .NET 4.0 из-за зависимости. Готовый к развертыванию проект, который я хочу построить, ориентирован на компилятор .NET 3.5. Наш текущий сценарий сборки недостаточно детализирован, чтобы ориентироваться на разные компиляторы .NET для каждого проекта. Обычно я могу использовать только один компилятор для каждого проекта в решении.
Достаточно ли умен компилятора .NET 4.0 для компиляции кода 3.5?
Структура решения
- Project 1 .NET 3.5 (с возможностью развертывания)
- Project 2 .NET 4.0 (используется для тестирования в автоматизированном цикле сборки)
Примечание. Я не могу просто игнорировать Проект 2, потому что наш автоматизированный сервер сборки запускает модульные тесты в проекте 2. Все тесты должны пройти, прежде чем сборка будет успешной.
Редактировать:
Я не компилирую этот код в Visual Studio. У нас есть собственный сценарий сборки, который запускается вне Visual Studio. Достаточно умен, чтобы использовать 1 компилятор .NET. Он использует этот компилятор для компиляции всех проектов в данном решении. Сценарию сборки не важно, определены ли проекты для компиляции с версией 3.5 или 4.0. Вместо этого он компилирует их с помощью определенного компилятора.
Проект 1 не ссылается на проект 2. Проект 2 - это проект, содержащий модульные тесты. Наш автоматизированный инструмент сборки компилирует проект 2 только для выполнения тестов.