2016-07-15 1 views
3

En utilisant la configuration DEBUG, je peux changer de comportement et utilisation de ce type de syntaxe:vérifier Programmatically la configuration de construction

#if DEBUG 
    Console.WriteLine("Debug"); 
#else 
    Console.WriteLine("Not Debug"); 
#endif 

Cependant, si je mis en place une configuration différente, disent: TEST puis ce n » t travail:

#if TEST 
    Console.WriteLine("Test"); 
#else 
    Console.WriteLine("Not Test"); 
#endif 

Existe-t-il un moyen de vérifier ces éléments?

+0

lire ceci http://stackoverflow.com/questions/3167617/determine-if-code-is-running-as-part-o f-a-unit-test – NinjaDeveloper

+0

Ajouter "TEST" aux propriétés du projet -> Construire -> Symboles de compilation conditionnelle, et cela fonctionne –

+1

Pour l'enregistrement - vous ne vérifiez pas réellement la configuration dans votre programme. #if est une directive de pré-compilateur, ce qui signifie qu'elle est exécutée dans le processus de compilation. Donc la structure #if .. #else ne fait pas partie de votre programme. – enkryptor

Répondre

5

La constante DEBUG est une constante, et il y a un paramètre pour chaque projet dans chaque configuration, qu'il soit défini ou non. La valeur par défaut est Debug et elle est désactivée dans Release, mais elle est entièrement configurable - ouvrez la page de propriétés d'un projet et regardez sous "Construire", et il y a une case à cocher disant "Définir la constante DEBUG". Ainsi, la définition d'une nouvelle configuration de construction ne vous donne pas automatiquement d'autres constantes de compilation gratuitement. Mais cela ne signifie pas que vous ne pouvez pas les créer manuellement.

Pour créer une constante de compilation, ajoutez-la à la liste des "Symboles de compilation conditionnels", mais assurez-vous de le faire dans la configuration de construction correcte.

3

Oui, vous pouvez utiliser différentes configurations. Le symbole DEBUG est généré automatiquement si vous choisissez la configuration de débogage dans votre gestionnaire de configuration. Tu peux le vérifier. Accédez à Votre projet -> Propriétés -> Construire -> Définir la constante DEBUG

Si vous avez besoin d'utiliser une constante supplémentaire, entrez la vôtre dans les symboles de compilation conditionnelle.

étapes pour votre cas:

  1. Aller à votre projet -> Propriétés -> Créer
  2. configuration du commutateur pour tester
  3. Entrée TEST symboles de compilation conditionnelle champ

Lancez votre code et profiter :)