Skip to content

DE CSharp Directive Conditional

Codex edited this page Oct 11, 2026 · 2 revisions

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

Bedingte Kompilierung

Handbuch C# · Praktischer Leitfaden

Wählt Teile des Quellcodes während der Kompilierung anhand von Symbolen und nicht anhand von Laufzeitvariablen aus.

Einfaches Beispiel (Example.cs)

Speichern Sie dieses Beispiel separat als Example.cs. Führen Sie es unabhängig von den anderen Beispielen dieser Seite aus.

Example.cs:

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

Ergebnis:

Enabled

Syntax

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

Beispiel 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
    }
}

Beispiel 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
    }
}

Offizielle Quelle: Microsoft Learn.

Clone this wiki locally