首页>教程>ASP.NET教程>ASP.NET Razor C# 逻辑条件

需要支持?

如果通过文档没办法解决您的问题,请提交工单获取我们的支持!

ASP.NET Razor C# 逻辑条件

内容纲要

语句一般都是顺序执行,但有时候可以根据条件有选择的执行代码

if 条件

C# 允许根据条件执行代码

使用 if 语句 来判断条件

根据判断结果,if 语句返回 true 或者 false

  1. if 语句开始一个代码块
  2. 条件写在括号里
  3. 如果条件为真,大括号内的代码被执行
@{
    var price=50;
}
<!DOCTYPE html>
<meta charset="utf-8"/>
@if ( price > 30 ) 
{
    <p>The price is too high.</p>    
}

else 条件语句

if 语句可以包含 else 条件语句

else 条件定义了当条件为假时被执行的代码

@{
    var price=20;
}
<!DOCTYPE html>
<meta charset="utf-8"/>
@if (price>30)
{
    <p>The price is too high.</p>
}else {
    <p>The price is OK.</p>
}

上面的范例中,如果第一个条件为真,if 块的代码将会被执行

else 条件覆盖了除 if 条件之外的 "其它所有情况"

else if 条件语句

多个条件判断可以使用 else if 条件

@{
    var price=25;
}
<!DOCTYPE html>
<meta charset="utf-8"/>
@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>
}

上面的范例,如果第一个条件为真,if 块的代码将会被执行

如果第一个条件不为真且第二个条件为真,else if 块的代码将会被执行

else if 条件的数量不受限制

如果 if 和 else if 条件都不为真,最后的 else 块(不带条件)覆盖了 "其它所有情况"

switch 条件语句

switch 条件语句可以用来测试一些单独的条件

@{
    var weekday=DateTime.Now.DayOfWeek;
    var day=weekday.ToString();
    var message="";
}
<!DOCTYPE html>
<meta charset="utf-8"/>
@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>

测试值(day)是写在括号中

每个单独的测试条件都有一个以分号结束的 case 值和以 break 语句结束的任意数量的代码行

如果测试值与 case 值相匹配,相应的代码行被执行

switch 条件语句有一个默认的情况 ( default: ) ,当所有的指定的情况都不匹配时,它覆盖了 "其它所有情况"

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索