Razor 不是一種編程語言。它是服務器端的標記語言。C# 允許根據條件執行代碼。 |
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 條件定義了當條件爲假時被執行的代碼。
實例
@{var price=20;} <html> <body> @if (price>30) { <p>The price is too high.</p> } else { <p>The price is OK.</p> } </body> </html>
註釋:在上面的實例中,如果第一個條件爲真,if 塊的代碼將會被執行。else 條件覆蓋了除 if 條件之外的"其他所有情況"。
多個條件判斷可以使用 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 塊的代碼將會被執行。
如果第一個條件不爲真且第二個條件爲真,else if 塊的代碼將會被執行。
else if 條件的數量不受限制。
如果 if 和 else if 條件都不爲真,最後的 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 塊有一個默認的情況(default:),當所有的指定的情況都不匹配時,它覆蓋了"其他所有情況"。