Создать 2 разные версии одной и той же сборки
Я создаю сборку.NET. Я хочу иметь 2 разные версии этой сборки. Единственная разница между двумя версиями - это строка guid, которая встроена в файл.cs. Таким образом, для версии 1 сборки руководство будет ECABAFD2-7F19-11D2-978E-0000F8757E2A, а для версии 2 ECABAFD2-7F19-11D2-978E-0000F8757E2B
Как мне управлять чем-то подобным в Visual Studio 2010? Есть какой-то инструмент автоматизации, который может изменить эту строку для меня и скомпилировать обе версии?
Как бы вы это сделали? Я открыт для предложений
2 ответа
В C# условная компиляция обычно выполняется с использованием ConditionalAttribute. Поместите код, используя соответствующие значения GUID в вашей сборке, которая является условной на двух разных символах компиляции - скажем, VARIANT1, VARIANT2.
Определите конфигурации сборки для этого проекта в Visual Studio, которые определяют VARIANT1 для первой сборки, VARIANT2 для второй сборки. Это приводит к двум выходным двоичным файлам - один с первым GUID и другой со вторым.
Если вы хотите небольшое изменение, возможно, используйте директиву #if
#if FirstVersion
_id = "ECABAFD2-7F19-11D2-978E-0000F8757E2A"
#else
_id = "ECABAFD2-7F19-11D2-978E-0000F8757E2B"
#endif
Затем вы используете командную строку для компиляции установки директивы или установки новой конфигурации, которую вы можете переключать.
Что касается сборки VS одновременно, я бы предложил для этого скрипт или внешний инструмент сборки, такой как Nant.