Как использовать разные ToolsVersion зависит от конфигурации - PullRequest
0 голосов
/ 19 апреля 2011

У меня есть проект, который должен быть собран с различными версиями фреймворка, включая .net 1.1.Чтобы построить проект с .net 1.1, мне нужно изменить ProjectVersion на 2.0, но для других сред он должен быть установлен на 4.0

Возможно ли реализовать такое поведение в Visual Studio?как это в файле csproj:

<Project ToolsVersion=" if $(Configuration) == DOT_NET1_1 THEN '2.0' ELSE '4.0'">

1 Ответ

0 голосов
/ 20 апреля 2011

Нет.Атрибут ToolsVersion устанавливается автоматически в зависимости от версии Visual Studio, используемой для открытия файла проекта.Свойства, которыми управляет ToolsVersion, зарезервированы и не могут быть изменены msbuild.У меня нет опыта компиляции в .NET 1.1, поэтому я не знаю, является ли это наиболее элегантным решением, но:

Вместо постоянного изменения этого атрибута, единственное, о чем я могу думатьсоздать два разных файла проекта, один для компиляции в .NET 1.1, а другой для компиляции в других платформах.Оба они могут ссылаться на одни и те же исходные файлы, ссылочные библиотеки и т. Д., Просто убедитесь, что они не используются в одном решении, или Visual Studio 2010 попытается обновить файл проекта с помощью более старой версии ToolsVersion.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...