ASP.NET Razor -C#の論理条件
プログラミングロジック:条件に基づいてコードを実行します。
If条件
C#を使用すると、条件に基づいてコードを実行できます。
条件をテストするには、ifステートメントを使用します。テストに基づいて、ifステートメントはtrueまたはfalseを返します。
- ifステートメントはコードブロックを開始します
- 条件は括弧内に書かれています
- テストが真の場合、中括弧内のコードが実行されます
例
@{var
price=50;}
<html>
<body>
@if (price>30)
{
<p>The price is too high.</p>
}
</body>
</html>
その他の条件
ifステートメントにelse条件を含めることができます。
else条件は、条件がfalseの場合に実行されるコードを定義します。
例
@{var
price=20;}
<html>
<body>
@if (price>30)
{
<p>The price is too high.</p>
}
else
{
<p>The price is OK.</p>
}
</body>
</html>
注:上記の例では、最初の条件が真の場合、それが実行されます。else条件は、「その他すべて」を対象としています。
その他の場合の条件
複数の条件は、 else if条件でテストできます:
例
@{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>
上記の例では、最初の条件が真の場合、それが実行されます。
そうでない場合、次の条件が真であれば、この条件が実行されます。
条件があれば、他にいくつでも持つことができます。
if条件とelseif条件のいずれも真でない場合、最後のelseブロック(条件なし)は「その他すべて」をカバーします。
スイッチ条件
スイッチブロックを使用して、いくつかの個別の条件をテストできます。
例
@{
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>
テスト値(日)は括弧内にあります。個々のテスト条件には、コロンで終わるcase値と、breakステートメントで終わる任意の数のコード行があります。テスト値がケース値と一致する場合、コード行が実行されます。
スイッチブロックには、いずれの場合も当てはまらない場合に実行される「その他すべて」のデフォルトのケース(デフォルト:)を設定できます。