zoukankan      html  css  js  c++  java
  • ASP.NET Razor

    http://www.w3schools.com/aspnet/razor_syntax.asp

    Razor supports both C# (C sharp) and VB (Visual Basic).

    Main Razor Syntax Rules for C#

    • Razor code blocks are enclosed in @{ ... }
    • Inline expressions (variables and functions) start with @
    • Code statements end with semicolon
    • Variables are declared with the var keyword
    • Strings are enclosed with quotation marks
    • C# code is case sensitive
    • C# files have the extension .cshtml

    代码块被包括在@{...}

    内置的表达式(变量和函数)以@开始

    语句以分号结束

    使用var进行变量的声明

    字符串用引号

    C#代码区分大小写

    C#文件的扩展名为, .cshtml

    How Does it Work?

    Razor is a simple programming syntax for embedding server code in web pages.

    Razor syntax is based on the ASP.NET framework, the part of the Microsoft.NET Framework that's specifically designed for creating web applications.  

    The Razor syntax gives you all the power of ASP.NET, but is using a simplified syntax that's easier to learn if you're a beginner, and makes you more productive if you're an expert.

    Razor web pages can be described as HTML pages with two kinds of content: HTML content and Razor code.

    When the server reads the page, it runs the Razor code first, before it sends the HTML page to the browser. The code that is executed on the server can perform tasks that cannot be done in the browser, for example accessing a server database. Server code can create dynamic HTML content on the fly, before it is sent to the browser. Seen from the browser, the HTML generated by server code is no different than static HTML content.

    ASP.NET web pages with Razor syntax have the special file extension cshtml (Razor using C#) or vbhtml (Razor using VB).


    Working With Objects

    Server coding often involves objects.

    The "DateTime" object is a typical built-in ASP.NET object, but objects can also be self-defined, a web page, a text box, a file, a database record, etc.

    Objects may have methods they can perform. A database record might have a "Save" method, an image object might have a "Rotate" method, an email object might have a "Send" method, and so on.

    Objects also have properties that describe their characteristics. A database record might have a FirstName and a LastName property (amongst others).

    The ASP.NET DateTime object has a Now property (written as DateTime.Now), and the Now property has a Day property (written as DateTime.Now.Day). The example below shows how to access some properties of the DateTime object:

    <table border="1">
    <tr>
    <th width="100px">Name</th>
    <td width="100px">Value</td>
    </tr>
      <tr>
    <td>Year</td><td>@DateTime.Now.Year</td>
    </tr>
      <tr>
    <td>Month</td><td>@DateTime.Now.Month</td>
    </tr>
    <tr>
    <td>Day</td><td>@DateTime.Now.Day</td>
    </tr>
    <tr>
    <td>Hour</td><td>@DateTime.Now.Hour</td>
    </tr>
    <tr>
    <td>Minute</td><td>@DateTime.Now.Minute</td>
    </tr>
    <tr>
    <td>Second</td><td>@DateTime.Now.Second</td>
    </tr>
    </table>

    If and Else Conditions

    An important feature of dynamic web pages is that you can determine what to do based on conditions.

    The common way to do this is with the if ... else statements:

    @{
    var txt = "";
    if(DateTime.Now.Hour > 12)
      {txt = "Good Evening";}
    else
      {txt = "Good Morning";}
    }
    <html>
    <body>
    <p>The message is @txt</p>
    </body>
    </html>

    Reading User Input

    Another important feature of dynamic web pages is that you can read user input.

    Input is read by the Request[] function, and posting (input) is tested by the IsPost condition:

    @{
    var totalMessage = "";
    if(IsPost)
        {
        var num1 = Request["text1"];
        var num2 = Request["text2"];
        var total = num1.AsInt() + num2.AsInt();
        totalMessage = "Total = " + total;
        }
    }
    <html>
    <body style="background-color: beige; font-family: Verdana, Arial;">
    <form action="" method="post">
    <p><label for="text1">First Number:</label><br>
    <input type="text" name="text1" /></p>
    <p><label for="text2">Second Number:</label><br>
    <input type="text" name="text2" /></p>
    <p><input type="submit" value=" Add " /></p>
    </form>
    <p>@totalMessage</p>
    </body>
    </html>
  • 相关阅读:
    水波模拟算法
    火车调度问题
    讨论范式
    字符串编码传输
    意识的物质,物质的意识
    需求分析——项目日志管理系统
    委托揭秘
    [9]OCP:开放封闭原则
    NULL OBJECT 模式
    由《通用权限设计》而引发的随想
  • 原文地址:https://www.cnblogs.com/chucklu/p/5632230.html
Copyright © 2011-2022 走看看