Asp.net “@{someexpression;}是什么意思?

Asp.net “@{someexpression;}是什么意思?,asp.net,Asp.net,一个我现在无法联系的人建议我使用一个查询字符串技巧,在我调试时避免缓存样式表。受访者说这样可以做到: @{ var currentDate = DateTime.Now; } <link href="@Url.Content("~/Styles/Site.css?" + currentDate)" rel="stylesheet" type="text/css" /> 我明白了原因,但是表达式@{var currentDate=DateTime.Now;}在我运行它时,只是解析为页

一个我现在无法联系的人建议我使用一个查询字符串技巧,在我调试时避免缓存样式表。受访者说这样可以做到:

@{ var currentDate = DateTime.Now; }
<link href="@Url.Content("~/Styles/Site.css?" + currentDate)" rel="stylesheet" type="text/css" />
我明白了原因,但是表达式@{var currentDate=DateTime.Now;}在我运行它时,只是解析为页面中的文本值。完整代码是:

<head runat="server">
    <title></title>
    @{ var currentDate = DateTime.Now; }
    <link href="@Url.Content("~/Styles/Site.css?" + currentDate)" rel="stylesheet" type="text/css" />

    <asp:ContentPlaceHolder ID="HeadContent" runat="server">
    </asp:ContentPlaceHolder>
</head>
语法@{}对我来说是新的。我在看过的任何文档中都没有看到对它的引用。根据用法,它似乎是内联脚本,但在运行时没有被视为内联脚本,我甚至不确定它是活动服务器页面语法还是PHP

工作原理是:

<% var currentDate = DateTime.Now; %>
<link href="~/Styles/Site.css?<%= currentDate%>" rel="stylesheet" type="text/css" />

好吧,不过,{}是什么呢?表示?

它不是表达式,它是中一个或多个声明和语句的集合的代码块。

它不是表达式,它是中一个或多个声明和语句的集合的代码块。

它不适用于您的原因是您没有使用razor引擎。@net通过实现Razor引擎,最明显的是通过mvc3。

它不适用于您的原因是您没有使用Razor引擎。@通过实现Razor引擎,最明显的是通过mvc3,取代了asp.net中对的需要。

它是,它是asp.net的一个更新的渲染引擎。它与您的代码块。

它是,这是一个较新的asp.net渲染引擎。它与您的代码块执行完全相同的操作