Como definir o projeto amplo #Define em C #
-
22-09-2019 - |
Pergunta
Eu tenho várias classes em um projeto que precisam estar apenas em certas construções do aplicativo que atualmente não estão prontas para liberação ou depuração.
Para impedir que essas classes sejam usadas, quero colocar em torno delas isso:
#if USE_MYCLASS
// Code here...
#endif
Infelizmente, não sei como configurar um projeto amplo do projeto.
Existe uma funcionalidade no Visual Studio para definir definições amplas do projeto.
Se houver, embora eu não precise agora, existe uma funcionalidade para definir definições amplas da solução?
Se não houver funcionalidade para tal (como C# não possui arquivos, suponho que seja possível), existe algum método ou plug -in de fazer essa funcionalidade sem usar o compilador de linha de comando e /d?
Solução
Você pode fazer isso nas propriedades do projeto, mas não no código -fonte.
Propriedades do projeto => build => símbolos de compilação condicional
Você pode especificar os símbolos de que precisar (o espaço delimitado, mas o IIRC é bastante perdoador). Observe que DEBUG
e TRACE
Também pode ser alternado com uma caixa de seleção.
Eu tenho alguns projetos com várias configurações de compilação de "liberação", com diferentes símbolos em cada um (para o edifício 2.0 vs 3,0 vs 3.5 versões - ver <DefineConstants>
aqui)