52 votes

Comment vérifier si un assemblage a été construit en utilisant la configuration Debug ou Release?

Je commence le déploiement de mon application Web et je dois garantir que tous les assemblys qui vont être déployés ont été construits à l'aide de la configuration de version. Notre système a été développé en utilisant C # /. Net 3.5.

Y'a-t-il une quelconque façon de réussir cela?

49voto

David Points 1715

Vérifiez ceci . L'idée est que vous obteniez la liste des attributs d'assembly à l'aide de Assembly.GetCustomAttributes() et que vous recherchiez DebuggableAttribute , puis que vous recherchiez si cet attribut possède la propriété IsJITTrackingEnabled .

30voto

Rubens Farias Points 33357

J'ai adoré cette suggestion de David , mais vous pouvez également suivre cette voie ( AssemblyInfo.cs ):

 #if DEBUG
[assembly: AssemblyDescription("Your application assembly (DEBUG version)")]
#else if RELEASE
[assembly: AssemblyDescription("Your application assembly (RELEASE version)")]
#endif
 

C’est plus humain, car tout le monde peut cliquer avec le bouton droit de la souris sur cet assemblage pour sélectionner Properties et accéder à l’onglet Details .

2voto

xr280xr Points 2057

Si vous avez installé Reflector, vous pouvez également cliquer sur l’assemblage et rechercher l’attribut debuggable ([assembly: Debuggable ()]) dans le volet Désassembleur.

0voto

TrueWill Points 14855

Ne pas déployer en production via Visual Studio. Examinez l' intégration continue et les versions scriptées (comme avec NAnt ).

La clé F5 n'est pas un processus de construction

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X