DE CSharp Directive Conditional - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki
Українська · Русский · 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.