@
を記述します。Razor Pagesでif文を利用した条件判定のコードと実行結果を紹介します。
コードブロック内の場合
if (条件式) ...処理;
条件式が真(true)である場合は()以降の処理が実行されます。
if (条件式){
...処理
}
処理が複数行にわたる場合は{
}
(中括弧)によるブロックを記述できます。条件式が真(true)の場合は { }
ブロック内の処理が実行されます。
if (条件式) ...処理; else ...処理;
条件式が偽(false)である場合の処理を記述する場合は、else文を利用します。
条件式が真(true)である場合は()以降の処理が、条件式が偽(false)である場合はelse以降の処理が実行されます。
if (条件式){
...処理
}
else{
}
else分の場合も処理が複数行にわたる場合は{
}
(中括弧)によるブロックを記述できます。
条件式が真(true)の場合は条件式直後の{}ブロック内の処理が、条件式が偽(false)の場合はelse直後の{ }
ブロック内の処理が実行されます。
if (条件式){
...処理
}
else if (条件式){
...処理
}
else{
...処理
}
条件式が偽(false)の場合にさらにif文で判定する場合には else if 文を利用します。
条件式が真(true)の場合は条件式直後の{ }
ブロック内の処理が、条件式が偽(false)の場合はelse ifの条件式の判定が実行され、
真(true)ならばelse if直後の{ }
ブロック内の処理が実行されます。else if の条件式も偽(false)であった場合はelse直後の{ }
ブロック内の処理が実行されます。
@
を記述します。以下のcshtmlファイルを作成します。
@page
@model RazorPagesControlFlow.Pages.SimpleIfElseModel
@{
string option = HttpContext.Request.Query["id"].ToString();
}
<h1>If Else文のデモ</h1>
<p>テスト</p>
@{
if (option == "penguin")
{
<p>IDに"penguin"が指定されました。</p>
}
else if (option == "")
{
<p>IDが指定されていません。</p>
}
else{
<p>IDが指定されました。</p>
}
}
<p>ページの終わり</p>
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
namespace RazorPagesControlFlow.Pages
{
public class SimpleIfElseModel : PageModel
{
public void OnGet()
{
}
}
}
URLパラメーターの id
の値によってページの表示を出し分けします。
id=penguin
が設定された場合は 「IDに"penguin"が指定されました。」のメッセージを表示します。
id
パラメーターが指定されていない場合は「IDが指定されていません。」のメッセージを表示し、
パラメーターが指定されている場合は「IDが指定されました。」のメッセージを表示します。
プロジェクトを実行します。
(アプリケーションルートURL)/SimpleIfElse
のURLにアクセスします。下図のページが表示されます。
idパラメータが指定されていないため、「IDが指定されていません。」のメッセージがページに表示されます。
URLを (アプリケーションルートURL)/SimpleIfElse?id=penguin
に変更してアクセスします。
id=penguin
が指定されているため、「IDに"penguin"が指定されました。」のメッセージがページに表示されます。
URLを (アプリケーションルートURL)/SimpleIfElse?id=duck
に変更してアクセスします。
idオプションは指定されていますが、"penguin" ではないため、「IDが指定されました。」のメッセージがページに表示されます。
Razor PagesでのIf文によるの条件分岐ができました。