Xiongjun

导航

基于Razor 语法的动态页面编程(1)

  • WebMatrix 和 ASP.NET Web Pages

    ASP.NET Web Pages 是一个用来建站的免费的网页开发技术
    下面的内容将解释如何用Razor语法来创建动态页面:

    1. WebMatrix是什么?

    WebMatrix是一套免费的,轻量级的网页开发工具。
    包含 IIS Developer Express, ASP.NET, MS SQL Server Compact(嵌入式的数据库), 同时也包含一些简单工具使得开发人员能够充分利用当前普遍使用的开源项目。
    采用Razor语法编写的网页,能够根据用户交互或数据库信息动态地改变内容和样式。

    2.   安装WebMatrix Beta

    http://www.microsoft.com/web/downloads/platform.aspx

  • 基于Razor语法编程

    Razor的语法是基于C#的,同时是支持VB语言的。

    1. 8条建议

    1 用@符号放在 表达式、单行或多行语句前面:
    <!-- Inline expression -->
    <p>The value of your account is: @total </p>
    <!-- Single statement block.  -->
    @{ var myMessage = "Hello World"; }
    <p>The value of myMessage is: @myMessage</p>
    <!-- Multi-statement block. -->
    @{ 
        var greeting = "Welcome to our site!"; 
        var weekDay = DateTime.Now.DayOfWeek; 
        var greetingMessage = greeting + " Today is: " + weekDay; 

    <p>The greeting is: @greetingMessage</p>}

    2 用大括号括起表达式或语句
    3 在大括号内的语句要以;分号结束
    4 可以使用临时变量
    <!-- Storing a string -->
    @{ var welcomeMessage = "Welcome, new members!"; }
    <p>@welcomeMessage</p>
    <!-- Storing a date -->
    @{ var year = DateTime.Now.Year; }
    <!-- Displaying a variable -->
    <p>Welcome to our new members who joined in @year!</p>

    其中@year 在第二跳语句中同样可以使用
    5 用“”括起内容文字
        如果内容文字中要输出,反斜杠“\”,可以在文字前放一个“@”,类似C#一样处理;
        如果内容文字中要输出,双引号““””,可以将内容文字中的双引号重复一次。
    6 @{}中的变量名是大小写敏感的
    7 使用对象属性
    8 使用if...else...

    1. 基本编程概念

    动态页面就这么简单!
    在您使用Razor编程的背后,需要了解些基础概念:
    Razor语法使得在网页中编写嵌入后台代码变得简单。
    Razor可以处理客户端内容和服务端代码,
    客户端内容包括: HTML,CSS,JS,plain Text
    服务器端碰到cshtml/vbhtml文件时,从中提取Razor语句,解析其中内容后生成HTML或其他动态内容,最后返回给浏览器。

    Razor Syntax -> ASP.NET -> .NET Framework

    2.   语言及语法

    - 操作符
        . () [] = ! == != < > <= >= + - * / && || += -=
    - 在代码中使用文件和文件路径
        虚拟路径用 斜杠“/”
        物理路径用 反斜杠“\”
        ~操作符表示:虚拟根路径(网站迁移时方便)
        @Server.MapPath() 将虚拟路径转化成物理路径(读写文件时用到)
        @Href() WebPage的方法,用于给资源(图片,网页,CSS)创建路径
    - 条件和循环操作
        @{
        if()
        {... }
        else if()
        {...}
        else
        {...}
        }
        @{
        switch()
        {
        case ...:
            ;
            break;
        default:
            ;
            break;
        }
        }
        for and while statement
    - 对象和集合
            Page 对象: Page.Request; Page.Responce;
            string[] 数组对象等
    - 错误处理

  • posted on 2010-07-29 23:51  Johnny Xiong  阅读(1376)  评论(0)    收藏  举报