Directivas de preprocesador en diferentes archivos en C #
Sé que puedo usar directivas de preprocesador enC#
para habilitar / deshabilitar la compilación de alguna parte del código.
Si defino una directiva en el mismo archivo, funciona bien:
#define LINQ_ENABLED
using System;
using System.Collections.Generic;
#if LINQ_ENABLED
using System.Linq;
#endif
Ahora estoy acostumbradoC++
al poner todas estas directivas de configuración dentro de un único archivo de encabezado, e incluirlo en todos los archivos donde necesito dichas directivas.
Si hago lo mismo enC#
algo no funciona:
//Config.cs
#define LINQ_ENABLED
//MyClass.cs
#define LINQ_ENABLED
using System;
using System.Collections.Generic;
#if LINQ_ENABLED
using System.Linq;
#endif
También probé lo siguiente, pero parece que no puedo definir una directiva dentro de un espacio de nombres:
//Config.cs
namespace Conf{
#define LINQ_ENABLED
}
//MyClass.cs
#define LINQ_ENABLED
using System;
using System.Collections.Generic;
using Conf;
#if LINQ_ENABLED
using System.Linq;
#endif
¿Qué estoy haciendo mal?¿Cuál es la forma correcta de utilizar el preprocesador en diferentes archivos enC#
?¿Hay alguna manera mejor de hacerlo?