Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
In der weiten Landschaft der Programmiersprachen ist die Verbesserung der Lesbarkeit und Effizienz des Codes von größter Bedeutung, und die Sprache C# ist ein zuverlässiger Partner, da sie verschiedene Konstrukte zur Unterstützung Ihrer Codierungsanforderungen bietet. Zu seinem Arsenal an leistungsstarken Tools gehört das "C# Switch-Anweisung" steht an prominenter Stelle. In diesem umfassenden Handbuch werden die Feinheiten der C#-Sprache erläutert. Wir werden uns mit den vielfältigen Einsatzmöglichkeiten befassen und die praktische Anwendung anhand eines realen Szenarios beleuchten IronPDF. Diese Reise zielt nicht nur darauf ab, seine Mechanismen zu enträtseln, sondern auch seine Bedeutung in der breiteren Landschaft der C#-Entwicklung zu unterstreichen.
Die switch-Anweisung in C# ist eine Kontrollflussanweisung, die es Entwicklern ermöglicht, saubereren und prägnanteren Code zu schreiben, wenn sie mit mehreren Bedingungen arbeiten. Sie ist besonders nützlich, wenn Sie verschiedene Aktionen auf der Grundlage eines bestimmten Variablenwerts durchführen möchten.
Dies macht sie zu einer perfekten Alternative zu if-else-Anweisungen, wenn das Schlüsselwort/die Variable im Mittelpunkt steht, da sie die Lesbarkeit des Codes und die Wartungsfähigkeit erhöht. Im Gegensatz zu einer if-else-Anweisung, die zu verschachtelten Strukturen und potenzieller Code-Komplexität führen kann, bietet die switch-Anweisung eine besser organisierte Alternative. Sie ist vor allem oberhalb des Codes und bei der Arbeit mit einer Variablen von Vorteil, die je nach ihrem Wert unterschiedliche Aktionen auslösen muss.
Schauen wir uns nun die Rolle der Unterbrechung im Zusammenhang mit einer switch-Anweisung genauer an. In C# wird die Anweisung break verwendet, um die Ausführung eines mit einem bestimmten Fall verbundenen Codeblocks innerhalb des switch-Blocks zu beenden. Wenn ein Match- oder Switch-Fall zutrifft und der diesem Fall entsprechende Codeblock ausgeführt wird, ist die break-Anweisung entscheidend dafür, dass die nachfolgenden Fälle nicht ausgewertet werden. Wenn Sie ein Fall-Through-Verhalten in Ihre Anweisung einbauen möchten, sollten Sie die Anweisung goto anstelle von break verwenden.
Hier ist die Grundstruktur einer switch-Anweisung in C#:
switch (variable)
{
case a:
// Code to be executed if variable equals value1
break;
case c:
// Code to be executed if variable equals value2
break;
// More cases can be added as needed
default:
// Default Case to be executed if none of the cases match
break;
}
switch (variable)
{
case a:
// Code to be executed if variable equals value1
break;
case c:
// Code to be executed if variable equals value2
break;
// More cases can be added as needed
default:
// Default Case to be executed if none of the cases match
break;
}
Select Case variable
Case a
' Code to be executed if variable equals value1
Case c
' Code to be executed if variable equals value2
' More cases can be added as needed
Case Else
' Default Case to be executed if none of the cases match
End Select
Lassen Sie uns nun die verschiedenen Arten von switch-Anweisungen und ihre Anwendungsfälle untersuchen.
Dies ist die einfachste Form einer switch-Anweisung. Er vergleicht die Variable mit konstanten Werten und führt den Codeblock aus, der mit dem ersten übereinstimmenden Wert oder Fall verbunden ist. Wenn keine Übereinstimmung gefunden wird, wird der Standard-Codeblock ausgeführt.
int day = 3;
switch (day)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
// More cases...
default:
Console.WriteLine("Invalid day");
break;
}
int day = 3;
switch (day)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
// More cases...
default:
Console.WriteLine("Invalid day");
break;
}
Dim day As Integer = 3
Select Case day
Case 1
Console.WriteLine("Monday")
Case 2
Console.WriteLine("Tuesday")
' More cases...
Case Else
Console.WriteLine("Invalid day")
End Select
Mit C# 7.0 wurde das Case-Pattern-Matching eingeführt, das eine aussagekräftigere und flexiblere Switch-Anweisung ermöglichte. Ein Musterübereinstimmungsausdruck kann Typmuster, Eigenschaftsmuster und mehr enthalten, wodurch der Code noch lesbarer wird.
object obj = "Hello";
switch (obj)
{
case string s:
Console.WriteLine($"String of length {s.Length}");
break;
case int i:
Console.WriteLine($"Integer: {i}");
break;
// More cases...
default:
Console.WriteLine("Other type");
break;
}
object obj = "Hello";
switch (obj)
{
case string s:
Console.WriteLine($"String of length {s.Length}");
break;
case int i:
Console.WriteLine($"Integer: {i}");
break;
// More cases...
default:
Console.WriteLine("Other type");
break;
}
Dim obj As Object = "Hello"
Select Case obj
'INSTANT VB TODO TASK: The following 'case' pattern variable is not converted by Instant VB:
'ORIGINAL LINE: case string s:
Case String s
Console.WriteLine($"String of length {s.Length}")
'INSTANT VB TODO TASK: The following 'case' pattern variable is not converted by Instant VB:
'ORIGINAL LINE: case int i:
Case Integer i
Console.WriteLine($"Integer: {i}")
' More cases...
Case Else
Console.WriteLine("Other type")
End Select
In C# 8.0 wurde eine neue und prägnantere Form der switch-Anweisung eingeführt: switch-Ausdrücke. Sie können an Stellen verwendet werden, an denen ein konstanter Ausdruck eines Wertes erforderlich ist, wodurch der Code kürzer und eleganter wird.
int day = 2;
string result = day switch
{
1 => "Monday",
2 => "Tuesday",
// More cases...
_ => "Invalid day"
};
Console.WriteLine(result);
int day = 2;
string result = day switch
{
1 => "Monday",
2 => "Tuesday",
// More cases...
_ => "Invalid day"
};
Console.WriteLine(result);
Dim day As Integer = 2
Dim tempVar As String
Select Case day
Case 1
tempVar = "Monday"
Case 2
tempVar = "Tuesday"
' More cases...
Case Else
tempVar = "Invalid day"
End Select
Dim result As String = tempVar
Console.WriteLine(result)
Nachdem wir nun ein solides Verständnis der switch-Anweisungen haben, wollen wir sehen, wie sie in einem realen Szenario mit IronPDF in C# angewendet werden können.
IronPDF ist eine beliebte C#-Bibliothek, die es Entwicklern ermöglicht, PDF-Dokumente auf einfache Weise zu erzeugen und zu bearbeiten. Es vereinfacht Aufgaben im Zusammenhang mit der Erstellung, Bearbeitung und dem Rendering von PDF-Dateien. Lassen Sie uns nun untersuchen, wie die switch-Anweisung mit IronPDF eingesetzt werden kann, um die Funktionalität und Organisation Ihres Codes zu verbessern.
Angenommen, Sie arbeiten an einem Dokumentenverwaltungssystem, in dem Sie verschiedene Arten von PDFs je nach dem Inhalt eines Dokuments erzeugen müssen. Im Folgenden erfahren Sie, wie Sie die switch-Anweisung mit IronPDF nutzen können:
using IronPdf;
using System;
class generatePDF {
public static void Main(String [] args)
{
var renderer = new ChromePdfRenderer();
string mystring = null;
Console.WriteLine("Enter your input : ");
Console.WriteLine("Enter 'I' for Invoice");
Console.WriteLine("Enter 'R' for Report");
mystring = Console.ReadLine();
switch (mystring)
{
case "R":
var pdf = renderer.RenderHtmlFileAsPdf("invoice.html");
pdf.SaveAs("Report.pdf");
break;
case "I":
var pdfi = renderer.RenderHtmlFileAsPdf("report.html");
pdfi.SaveAs("Invoice.pdf");
break;
}
}
}
using IronPdf;
using System;
class generatePDF {
public static void Main(String [] args)
{
var renderer = new ChromePdfRenderer();
string mystring = null;
Console.WriteLine("Enter your input : ");
Console.WriteLine("Enter 'I' for Invoice");
Console.WriteLine("Enter 'R' for Report");
mystring = Console.ReadLine();
switch (mystring)
{
case "R":
var pdf = renderer.RenderHtmlFileAsPdf("invoice.html");
pdf.SaveAs("Report.pdf");
break;
case "I":
var pdfi = renderer.RenderHtmlFileAsPdf("report.html");
pdfi.SaveAs("Invoice.pdf");
break;
}
}
}
Imports IronPdf
Imports System
Friend Class generatePDF
Public Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
Dim mystring As String = Nothing
Console.WriteLine("Enter your input : ")
Console.WriteLine("Enter 'I' for Invoice")
Console.WriteLine("Enter 'R' for Report")
mystring = Console.ReadLine()
Select Case mystring
Case "R"
Dim pdf = renderer.RenderHtmlFileAsPdf("invoice.html")
pdf.SaveAs("Report.pdf")
Case "I"
Dim pdfi = renderer.RenderHtmlFileAsPdf("report.html")
pdfi.SaveAs("Invoice.pdf")
End Select
End Sub
End Class
Dieses C#-Programm nutzt die IronPDF-Bibliothek, um dynamisch PDF-Dateien auf der Grundlage von Benutzereingaben zu erzeugen. Der Benutzer wird aufgefordert, entweder 'I' für Invoice oder 'R' für Report einzugeben. Je nach Eingabe verwendet das Programm die Klasse ChromePdfRenderer, um die entsprechende HTML-Datei zu rendern ("invoice.html" für Bericht oder "report.html" für Rechnung) in ein PDF-Format umzuwandeln. Die generierte PDF-Datei wird dann unter dem entsprechenden Dateinamen gespeichert, "Report.pdf" für den Bericht und "Invoice.pdf" für die Rechnung. Dieser Ansatz bietet eine flexible und interaktive Möglichkeit, bestimmte Arten von PDF-Dokumenten über eine Konsolenschnittstelle zu erzeugen.
Im folgenden Beispiel erstellen wir einen Bericht unter Verwendung von Input from User.
Konsoleneingabe:
Output PDF:
In diesem Fallbeispiel werden wir eine Rechnung erstellen, indem wir eine Eingabe vom Benutzer und eine Switch-Anweisung verwenden.
Konsoleneingabe:
Output PDF:
Zusammenfassend lässt sich sagen, dass die C#-Switch-Anweisung ein robustes Kontrollfluss-Tool ist, das Entwicklern im Vergleich zu traditionellen if-else-Anweisungen einen organisierteren und prägnanteren Ansatz für die Handhabung mehrerer Bedingungen bietet. Durch die Kategorisierung der Codeausführung auf der Grundlage von Variablenwerten können Switch-Anweisungen zu einer verbesserten Lesbarkeit und Wartbarkeit Ihres Codes beitragen.
Die Vielseitigkeit von Switch-Anweisungen wird anhand verschiedener Typen demonstriert, darunter einfache Switches, musterbasierte Switch-Blöcke, Switches und Switch-Ausdrücke, die jeweils auf bestimmte Codeszenarien zugeschnitten sind.
Die Integration der IronPDF-Bibliothek veranschaulicht die praktische Anwendung von Switch-Anweisungen bei der Erzeugung dynamischer PDF-Dokumente auf der Grundlage von Benutzereingaben und zeigt, wie diese Funktion in realen Szenarien genutzt werden kann, um die Flexibilität und Effizienz Ihrer C#-Programmierung zu verbessern.
IronPDFum mehr über die HTML-zu-PDF-Konvertierung zu erfahren, besuchen Sie bitte die folgende Website link.
9 .NET API-Produkte für Ihre Bürodokumente