编程逻辑:执行基于条件的代码。

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 时执行代码。

asp.net MVC Razor 语法(3)的更多相关文章

  1. ASP.NET MVC Razor语法

    ASP.NET MVC Razor语法 (一) 关于_ViewStart.cshtml文件     使用Razor模板引擎的话,会自动生成一个_ViewStart.cshtml文件.事实上,_View ...

  2. Asp.net MVC razor语法参考

    Razor语法的快捷参考http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx/ 只是copy下来便于查阅! I ...

  3. asp.net MVC Razor 语法(1)

    Razor 不是编程语言.它是服务器端标记语言. 什么是 Razor ? Razor 是一种允许您向网页中嵌入基于服务器的代码(Visual Basic 和 C#)的标记语法. 当网页被写入浏览器时, ...

  4. ASP.NET MVC Razor语法及实例

    1.混合HTML与Razor脚本 知识点:(1).cshtml怎样引用访问数据, (2).if  for 与html嵌套 @using System.Data @using CIIC.TCP.Enti ...

  5. asp.net MVC Razor 语法(2)

    变量是用于存储数据的命名实体. 变量 变量用于存储数据. 变量名必须以字母字符开头,不能包含空格和保留字符. 变量可以是某个具体的类型,指示其所存储的数据类型.字符串变量存储字符串值 ("W ...

  6. MVC Razor 语法(转)

    http://blog.csdn.net/pasic/article/details/7072340 原文地址:MVC Razor 语法(转)作者:panzhaowen_jacki 语法名称 Razo ...

  7. 教你如何在 Javascript 文件里使用 .Net MVC Razor 语法

    摘录 文章主要是介绍了通过一个第三方类库RazorJS,实现Javascript 文件里使用 .Net MVC Razor 语法,很巧妙,推荐给大家 相信大家都试过在一个 View 里嵌套使用 jav ...

  8. ASP.NET没有魔法——ASP.NET MVC Razor与View渲染 ASP.NET没有魔法——ASP.NET MVC界面美化及使用Bundle完成静态资源管理

    ASP.NET没有魔法——ASP.NET MVC Razor与View渲染   对于Web应用来说,它的界面是由浏览器根据HTML代码及其引用的相关资源进行渲染后展示给用户的结果,换句话说Web应用的 ...

  9. Asp.net MVC Razor视图模版动态渲染PDF,Razor模版生成静态Html

    Asp.net MVC Razor视图模版动态渲染PDF,Razor模版生成静态Html 1.前言 上一篇文章我开源了轮子,Asp.net Core 3.1 Razor视图模版动态渲染PDF,然后,很 ...

随机推荐

  1. 有趣的keil MDK细节

    1.MDK中的char类型的取值范围是? 在MDK中,默认情况下,char 类型的数据项是无符号的,所以它的取值范围是0-255.它们可以显式地声明为signed char 或 unsigned.因此 ...

  2. paip.c++ qt 共享库dll的建立

    paip.c++ qt 共享库dll的建立 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog.csdn.net/at ...

  3. wormhole提升hivereader读取速度方案

    背景: 最近dw用户反馈wormhole传输速度很慢,有些作业甚至需要3-4个小时才能完成,会影响每天线上报表的及时推送.我看了下,基本都是从Hive到其他数据目的地,也就是使用的是hivereade ...

  4. css3前端工具

    随着CSS3的出现,CSS3讨论的话题越来越多了,现在各种教程也是多如牛毛,不比一年前的时候,找个资料要捞遍整个互联网,而且还很难找到自己需要的参考资料.从侧面也说明,CSS3对于前端工程师来说,越来 ...

  5. Mongodb 权限管理

  6. 第二章SignalR所支持的平台

    第二章SignalR所支持的平台 SignalR支持各种服务器和客户端的配置.此外,每种传输方式都有自身的配置要求和限制:如果某种传输方式不被系统支持,SignalR优雅地将故障转移到其他类型的传输方 ...

  7. applicationContext.xml 配置文件的存放位置

    eb.xml中classpath:和classpath*:  有什么区别? classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件中 ...

  8. c++中类模版中的static数据成员的定义

    这个有点绕. 如下: template <typename T> class A{ ......... static std::allocate<T> alloc_; }; t ...

  9. malloc和free的区别

    1,malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符.它们都可用于申请动态内存和释放内存. 2,对于非内部数据类型的对象而言,光用maloc/free无法满足动 ...

  10. 使用cmake安装mysql5.5.13

    MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. 安装cmake : tar zxvf ...