1

我正在尝试通过 Razor 脚本通过其 ID 获取节点,但我不断收到此错误:

错误 CS0118:“umbraco.MacroEngines.BaseContext.Node”是“属性”,但用作“类型”

这是我的代码:

@inherits umbraco.MacroEngines.DynamicNodeContext
@{
var node = new Node(Parameter.newsnode);
}

我觉得我在这里遗漏了一些非常基本的东西,似乎无法弄清楚。

Umbraco 4.11.1

4

4 回答 4

4

这是我通常这样做的方式:

@inherits umbraco.MacroEngines.DynamicNodeContext
@{
  // Get some default node id if this is null or empty
  var newsNodeId = String.IsNullOrEmpty(Parameter.newsnode) ? "1022" : Parameter.newsnode;

  // Get the node using this helper method on DynamicNode
  var newsNode = @Model.NodeById(newsNodeId);
}
于 2013-01-13T22:46:44.283 回答
3

It was as simple as including Umbraco.NodeFactory

@using umbraco.NodeFactory
于 2013-01-13T16:13:31.883 回答
1

有这个简单的功能:

@{
    var node = @Library.NodeById(Model.Id);
}

@* 或者 *@

@{
    var node = @Library.NodeById(1250);
}
于 2014-02-23T20:15:37.697 回答
1

如果您正在为 Umbraco 编程并且想快速了解 Razor 代码的可用选项,您可以使用备忘单:http: //our.umbraco.org/projects/developer-tools/razor-dynamicnode-cheat-sheet。另请阅读此文档: http: //our.umbraco.org/wiki/reference/code-snippets/razor-snippets

于 2014-03-04T08:37:20.893 回答