【问题标题】:Razor reseverd words剃刀保留的话
【发布时间】:2010-12-02 18:47:10
【问题描述】:

剃刀语法简洁,几乎没有争论。但我似乎在任何地方都找不到它...
razor 保留字是什么?
@使用
@继承
@函数
@section
你还知道其他的吗?

【问题讨论】:

    标签: asp.net-mvc-3 razor


    【解决方案1】:

    这是 Razor 保留关键字的列表(注意:这适用于 cshtml,vbhtml 遵循 VB 的规则):

    Razor 特定关键字

    • 继承
    • 功能
    • 部分
    • 帮手
    • 模型(仅在 MVC 项目中)

    您可以使用@(inherits) 转义这些

    特定于语言的 Razor 关键字

    这些是 Razor 可以理解的 C# 关键字

    • 如果
    • 试试
    • foreach
    • 同时
    • 切换
    • 使用
    • 案例
    • 默认

    您可以使用@(@lock) 转义它们(第一个@ 用于转义Razor 解析器,第二个@ 用于转义C# 解析器)

    保留关键字

    这些不在 RC 中保留,但将用于 RTM。 更新:这些将没有 RTM 功能。它们只是为将来使用而保留。

    • 命名空间
    • 布局

    【讨论】:

      【解决方案2】:

      你已经拥有了它们。我在 RC 中知道的唯一一个是 @model,但我在源的 RazorKeywords 列表中没有看到它,所以我不确定它是如何使用或解析的。

      如果您检查 WebPages/System.Web.Razor 项目下的源文件“CSharpCodeParser.cs”,您会发现 RazorKeywords 列表。

      【讨论】:

      • MVC 项目实际上拥有自己的派生代码解析器,其中添加了@model。这就是为什么它不在基本代码解析器中的任何地方。
      • 感谢马辛德的更新。我不应该意识到它是特定于 MVC 的。我也无法在我的 razor 解析器引擎中找到模型,所以我知道它一定是分开的 :)
      猜你喜欢
      • 2022-11-23
      • 1970-01-01
      • 2011-07-01
      • 2012-06-30
      • 1970-01-01
      • 2020-02-19
      • 1970-01-01
      • 2013-02-22
      相关资源
      最近更新 更多