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>
运行实例
Else 条件
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>
运行实例
注释:在上面的例子中,如果价格不大于 30,则执行其余的语句。
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>
运行实例
在上面的例子中,如果第一个条件为 true,则执行第一个代码块。
否则,如果下一个条件为 true,则执行第二个代码块。
您能够设置任意数量的 else if 条件。
如果 if 和 else if 条件均不为 true,则执行最后一个 else 代码块。
Switch 条件
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 时执行代码。