ASP.NET Razor - C# ロジック条件

プログラミングロジック:条件に基づくコードの実行です。

If 条件

C# は条件に基づくコードの実行を許可します。

特定の条件をテストするために、以下を使用できます if 文。if 文は、あなたのテストに基づいてtrueまたはfalseを返します:

  • if 文はコードブロックを開始します
  • 条件は括弧内に位置します
  • 条件が真である場合、大括弧内のコードを実行します

@{var price=50;}
<html>
<body>
@if (price>30)
    {
    <p>価格が高すぎます。</p>
    }
</body>
</html>

インスタンスを実行

Else 条件

if 文は、以下を含むことができます else 条件

else 条件がfalseとして定義された場合に実行されるコードを定義します。

@{var price=20;}
<html>
<body>
@if (price>30)
  {
  <p>価格が高すぎます。</p>
  }
else
  {
  <p>価格が適切です。</p>
  } 
</body>
</html>

インスタンスを実行

注記:上記の例では、価格が30未満でない場合、残りのステートメントを実行します。

Else If 条件

通過できます else if 条件複数の条件をテストするために:

@{var price=25;}
<html>
<body>
@if (price>=30)
  {
  <p>価格が高すぎます。</p>
  }
else if (price>20 && price<30) 
  {
  <p>価格が適切です。</p>
  }
else
  {
  <p>価格が適切です。</p>
  }    
</body>
</html>

インスタンスを実行

上記の例では、最初の条件が true であれば、最初のコードブロックを実行します。

それ以外の場合、次の条件が true であれば、次のコードブロックを実行します。

任意の数の else if 条件を設定できます。

if と else if 条件がどちらも true でない場合、最後の else コードブロックを実行します。

スイッチ条件

switch コードブロック以下の具体的な条件をテストするために使用できます:

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

インスタンスを実行

テスト値 (day) は括弧内に位置します。具体的なテスト条件は case キーワードで始まり、コロンで終わり、その後には任意の数のコード行が許可され、break ステートメントで終わります。テスト値が case 値に一致した場合、コード行を実行します。

switch コードブロックは、残りのすべてのケースに対してデフォルトの case (default:) を設定し、すべての case が true でない場合にコードを実行します。