2010-10-07 3 views
1

Je crée un assemblage .NET. Je veux avoir 2 versions différentes de cet assemblage. La seule différence entre les deux versions est une chaîne guid incorporée dans un fichier .cs. donc pour la version 1 de l'assemblage, la guid sera ECABAFD2-7F19-11D2-978E-0000F8757E2A et pour la version 2 ECABAFD2-7F19-11D2-978E-0000F8757E2BCréation de 2 versions différentes du même assemblage

Comment puis-je gérer quelque chose comme ça dans Visual Studio 2010 ? Y a-t-il une sorte d'outil d'automatisation qui peut changer cette chaîne pour moi et compiler les deux versions?

Comment le feriez-vous? Je suis ouvert aux suggestions

Répondre

1

En C#, la compilation conditionnelle est généralement effectuée à l'aide de ConditionalAttribute. Placez le code en utilisant les valeurs GUID pertinentes dans votre assembly, Conditional, sur deux symboles de compilation différents, par exemple VARIANT1, VARIANT2.

Définissez les configurations de génération pour ce projet dans Visual Studio qui définissent VARIANT1 pour la première version, VARIANT2 pour la deuxième version. Cela entraîne deux binaires de sortie - l'un avec le premier GUID et l'autre avec le second.

+0

parfait - merci –

1

Si vous voulez un léger changement peut-être utiliser la directive #if

#if FirstVersion 
    _id = "ECABAFD2-7F19-11D2-978E-0000F8757E2A" 
#else 
    _id = "ECABAFD2-7F19-11D2-978E-0000F8757E2B" 
#endif 

Ensuite, vous pouvez soit utiliser la ligne de commande pour compiler le réglage de la directive ou configurer un nouveau configuartion que vous pouvez changer. Comme pour avoir VS construire à la fois en même temps je suggérerais un script ou un outil de construction externe comme Nant pour le faire.

Questions connexes