【发布时间】:2013-11-17 16:45:04
【问题描述】:
我正在尝试使用 umbraco:Macro 标记在我的一个视图中创建剃刀 @section,以便将每个视图特定的脚本/样式添加到 head 标记中。 我当前的代码如下所示(母版页的头部):
<asp:Content ContentPlaceHolderID="ContentPlaceHolderDefault" runat="server">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<link rel="stylesheet" type="text/css" href="/css/foundation.min.css">
<script type="text/javascript" src="/js/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="/js/responsiveslides.js"></script>
<script type="text/javascript" src="/js/js.js"></script>
<umbraco:Macro runat="server" language="cshtml">
@if(IsSectionDefined("JSIncludes"))
{
@RenderSection("JSIncludes")
}
@if(IsSectionDefined("CSSIncludes"))
{
@RenderSection("CSSIncludes")
}
</umbraco:Macro>
</head>
还有这个(实际看到的部分):
<asp:Content ContentPlaceHolderId="ContentPlaceHolderDefault" runat="server">
<umbraco:Macro runat="server" language="cshtml">
@section JSIncludes
{
<script type="text/javascript" src="/js/main_page.js"></script>
}
</umbraco:Macro>
但是当我试图打开一个页面时,我的页面顶部出现“加载宏引擎脚本时出错(文件:)”错误。 有谁知道这是什么原因? 如果有人知道如何正确添加这样的东西,那就太好了。 提前致谢。
【问题讨论】:
-
您为什么要为此使用剃刀宏?您可以使用 ASP.NET
ContentPlaceHolder来实现这一点。 -
Ollie P,你能告诉我更多关于如何使用 ContentPlaceHolder 的信息吗?我从来没有使用过纯 asp.net,所以在“非剃刀”语法和类上找不到任何东西。