这让我疯狂了大约3个小时了。我们从Umbraco 4升级到Umbraco 7,现在我们的网站菜单已经破了。我们曾经使用遍历节点并创建CSS菜单系统的脚本。
所以我开始阅读新内容,我甚至无法让@helper或@functions块工作。该脚本现在使用PartialView宏,该宏使用名为MenuNode的参数,该参数是我想要遍历的节点。
以下是有效的代码:
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{
var menuNode1 = string.IsNullOrEmpty((string)Model.MacroParameters["MenuNode"])? 0 : Convert.ToInt32(Model.MacroParameters["MenuNode"]);
}
<h1>@menuNode1</h1>
一旦我尝试在Umbraco中提供的Navigation PartialView示例中添加@helper或@functions,它就会停止工作。这就是打破它的原因。
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{
var menuNode1 = string.IsNullOrEmpty((string)Model.MacroParameters["MenuNode"])? 0 : Convert.ToInt32(Model.MacroParameters["MenuNode"]);
}
@TestHelper(menuNode1)
@helper TestHelper(var testvalue)
{
<h1>@testvalue</h1>
}
有人能指出我做错了吗?
答案 0 :(得分:1)
问题解决了。这是因为我在@helper参数列表中使用var,更改为动态并且工作正常。