У меня есть решение, которое я создаю в сборке TFS 2010.Это решение и его сборка имеют 3 набора конфигураций (Разработка, Интеграция, Релиз).Я установил сборку для сборки всех из них, и она работает в основном нормально.
В этом решении есть проект Silverlight, который устанавливает разные символы условной компиляции в зависимости от того, какая конфигурация создается, потому что у него разные веб-сайты.URL-адреса служб для каждой конфигурации, например:
private const string STR_WS_EndPoint =
#if INTEGRATION
"Integration_WS_EndPoint";
#elif DEVELOPMENT
"Development_WS_EndPoint";
#elif DEBUG
"Debug_WS_EndPoint";
#else
"Release_WS_EndPoint";
#endif
Когда я собираю эти различные конфигурации в Visual Studio, он выбирает правильную строку для каждой конфигурации, но когда TFS создает другую конфигурацию, все они заканчиваютсястрока "Release_WS_EndPoint" (я проверял, используя ILSpy), т.е. ни один из условных символов не был активен.Как мне получить сборку TFS, чтобы подобрать эти символы компиляции?Я не могу использовать поле «MSBuild Arguments» в сборке для этого, потому что, как я уже сказал, он собирает все различные конфигурации, поэтому мне нужно использовать символы компиляции .csproj, как это делает Visual Studio.