ASP.NET Razor – C#-Logikbedingungen


Programmierlogik: Code basierend auf Bedingungen ausführen.


Die If-Bedingung

Mit C# können Sie Code basierend auf Bedingungen ausführen.

Um eine Bedingung zu testen, verwenden Sie eine if-Anweisung . Die if-Anweisung gibt basierend auf Ihrem Test wahr oder falsch zurück:

  • Die if-Anweisung startet einen Codeblock
  • Die Bedingung steht in Klammern
  • Der Code in den geschweiften Klammern wird ausgeführt, wenn der Test wahr ist

Beispiel

@{var price=50;}
<html>
<body>
@if (price>30)
    {
    <p>The price is too high.</p>
    }
</body>
</html>

Die Else-Bedingung

Eine if-Anweisung kann eine else-Bedingung enthalten .

Die Else-Bedingung definiert den auszuführenden Code, wenn die Bedingung falsch ist.

Beispiel

@{var price=20;}
<html>
<body>
@if (price>30)
  {
  <p>The price is too high.</p>
  }
else
  {
  <p>The price is OK.</p>
  }
</body>
</html>

Hinweis: Wenn im obigen Beispiel die erste Bedingung wahr ist, wird sie ausgeführt. Die Else-Bedingung deckt „alles andere“ ab.



Die Else If-Bedingung

Mehrere Bedingungen können mit einer else if-Bedingung getestet werden :

Beispiel

@{var price=25;}
<html>
<body>
@if (price>=30)
  {
  <p>The price is high.</p>
  }
else if (price>20 && price<30)
  {
  <p>The price is OK.</p>
  }
else
  {
  <p>The price is low.</p>
  }   
</body>
</html>

Wenn im obigen Beispiel die erste Bedingung wahr ist, wird sie ausgeführt.

Wenn nicht, dann wird diese Bedingung ausgeführt, wenn die nächste Bedingung wahr ist.

Sie können beliebig viele else if-Bedingungen haben.

Wenn keine der if- und else if-Bedingungen wahr sind, deckt der letzte else-Block (ohne Bedingung) „alles andere“ ab.


Wechselbedingungen

Mit einem Schalterblock können mehrere Einzelbedingungen getestet werden:

Beispiel

@{
var weekday=DateTime.Now.DayOfWeek;
var day=weekday.ToString();
var message="";
}
<html>
<body>
@switch(day)
{
case "Monday":
    message="This is the first weekday.";
    break;
case "Thursday":
    message="Only one day before weekend.";
    break;
case "Friday":
    message="Tomorrow is weekend!";
    break;
default:
    message="Today is " + day;
    break;
}
<p>@message</p>
</body>
</html>

Der Testwert (Tag) steht in Klammern. Jede einzelne Testbedingung hat einen case-Wert, der mit einem Doppelpunkt endet, und eine beliebige Anzahl von Codezeilen, die mit einer break-Anweisung enden. Wenn der Testwert mit dem Fallwert übereinstimmt, werden die Codezeilen ausgeführt.

Ein Schalterblock kann einen Standardfall (default:) für „alles andere“ haben, der ausgeführt wird, wenn keiner der Fälle zutrifft.