Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

Schwieriges Verhältnis: Switch-Ausdrücke und Blazor

Die Kombination aus Switch-Ausdrücken und Blazor kann zu Problemen führen. Aber es gibt Alternativen.
© EMGenie
In Blazor stößt man manchmal auf unerwartete Einschränkungen, insbesondere wenn es um die Verwendung von Switch-Ausdrücken in der Anwendung geht. Laut einem Blogbeitrag von Steven Giesel können Switch-Ausdrücke, die in C# 8.0 eingeführt wurden und eine prägnantere Schreibweise für die Bedingungsauswertung bieten, in bestimmten Fällen nicht wie erwartet in Blazor eingesetzt werden.
Der Autor erklärt, dass der C#-Compiler in der Lage ist, diese Ausdrücke zu verarbeiten. Die Umwandlung in einfachen if-else-Anweisungen erfolgt, doch der Blazor-Quellcodegenerator hat Schwierigkeiten, diese Ausgaben richtig zu interpretieren. Dies führt zu einer Vielzahl von Kompilierungsfehlern, die Entwickler vor Herausforderungen stellen. Er zeigt Beispielcode, um zu verdeutlichen, was aus solchen Ausdrücken resultieren kann und welche Alternativen zur Verfügung stehen. Wenn man
public string GetGreeting(string name)
{
  return name switch
  {
    "Alice" => "Hello, Alice!",
    "Bob" => "Hello, Bob!",
    _ => "Hello, stranger!"
  };
} 

in Blazor verwendet, erscheinen häufig Fehler wie "Invalid expression term" oder "Syntax error". Um diesen Problemen zu entgehen, empfiehlt der Autor, entweder zu den klassischen if-else-Anweisungen zurückzukehren oder Switch-Anweisungen zu verwenden.

.NET Stack

Neueste Beiträge

Building Features is easy – echten Wert liefern nicht - Interview
Eva Feigl erklärt im DWX-Interview, warum Teams oft am falschen Problem arbeiten – und wie Annahmen, Vanity Metriken und fehlendes Nutzer-Feedback echten Produkterfolg verhindern.
5. Aug 2026
PandaOS: Die Workstation, die ich mir immer gewünscht habe
Monatelang bin ich zwischen KI-Werkzeugen hin- und hergesprungen. Cursor, Claude Code, OpenCode, Aider. Jedes hatte etwas Geniales, doch keines fühlte sich vollständig an. Also habe ich ein eigenes Tool gebaut? PandaOS ist das Ergebnis.
6 Minuten
KI bedeutet Developer-Level – Agentic Coding braucht Pro-Code
Agentic Coding auf einem geschlossenen Low-Code-Builder kombinieren? Lieber nicht. Denn wer seine Plattform nicht für Developer gebaut hat, hat sie nicht für KI gebaut.
6 Minuten
30. Jul 2026

Das könnte Dich auch interessieren

ZLinq: LINQ-Bibliothek ohne Speicherallokation
Die neu veröffentlichte ZLinq von Yoshifumi Kawai verspricht eine effiziente LINQ-Bibliothek ohne Speicherallokationen.
3 Minuten
17. Jun 2025
Zwischenbilanz - Praktische Erfahrungen mit Blazor
Blazor WebAssembly in der Praxis: Reife, gelungener Einsatz, Showstopper.
11 Minuten
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige