Razor ASP.NET - Condizioni logiche C#


Logica di programmazione: esegue il codice in base alle condizioni.


La condizione se

C# ti consente di eseguire codice in base alle condizioni.

Per testare una condizione si usa un'istruzione if . L'istruzione if restituisce true o false, in base al test:

  • L'istruzione if avvia un blocco di codice
  • La condizione è scritta tra parentesi
  • Il codice tra parentesi graffe viene eseguito se il test è vero

Esempio

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

L'altra condizione

Un'istruzione if può includere una condizione else .

La condizione else definisce il codice da eseguire se la condizione è falsa.

Esempio

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

Nota: nell'esempio precedente, se la prima condizione è vera, verrà eseguita. La condizione else copre "tutto il resto".



La condizione dell'altro se

Condizioni multiple possono essere verificate con una condizione else if :

Esempio

@{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>

Nell'esempio sopra, se la prima condizione è vera, verrà eseguita.

In caso contrario, se la condizione successiva è vera, questa condizione verrà eseguita.

Puoi avere un numero qualsiasi di condizioni else if.

Se nessuna delle condizioni if ​​e else if è vera, l'ultimo blocco else (senza una condizione) copre "tutto il resto".


Cambia condizioni

Un blocco interruttore può essere utilizzato per testare una serie di condizioni individuali:

Esempio

@{
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>

Il valore del test (giorno) è tra parentesi. Ogni singola condizione di test ha un valore case che termina con due punti e un numero qualsiasi di righe di codice che terminano con un'istruzione break. Se il valore del test corrisponde al valore del caso, le righe di codice vengono eseguite.

Un blocco switch può avere un caso predefinito (predefinito:) per "tutto il resto" che viene eseguito se nessuno dei casi è vero.