Skip to content

ES CSharp Directive Conditional

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

Compilación condicional

Manual C# · Guía Práctica

Selecciona partes del código fuente durante la compilación por símbolos, no por variables de tiempo de ejecución.

Ejemplo sencillo (Example.cs)

Guarde este ejemplo por separado como Example.cs. Ejecútelo independientemente de los demás ejemplos de esta página.

Example.cs:

// PROJECT-EXAMPLE
#define REPORT
#if REPORT
System.Console.WriteLine("Enabled");
#else
System.Console.WriteLine("Disabled");
#endif

Resultado:

Enabled

Sintaxis

#if FEATURE
// code
#elif OTHER
// other code
#else
// fallback
#endif

Ejemplo 1

#define FEATURE
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        #if FEATURE
        Console.WriteLine("Feature enabled");
        #else
        Console.WriteLine("Fallback");
        #endif
    }
}

Ejemplo 2

#define SECOND
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        #if FIRST
        Console.WriteLine("First");
        #elif SECOND
        Console.WriteLine("Second");
        #else
        Console.WriteLine("Neither");
        #endif
    }
}

Fuente oficial: Microsoft Aprender.

Clone this wiki locally