我'得到了这个XML结构:
<tagging>
<MultiNodePicker>
<nodeId>119683</nodeId>
<nodeId>119684</nodeId>
</MultiNodePicker>
</tagging>
@using umbraco.MacroEngines
@inherits DynamicNodeContext
@
{
<ul>
@foreach (var item in Model.tagging)
{
var node = Library.NodeById(item.InnerText);
if (node.Id != 0)
{
<li>@node.Name></li>
}
}
</ul>
}
但是没有用,也许我写错了。
任何?
答案 0 :(得分:0)
在我的脑海中,您可能需要将代码更改为以下内容:
@using umbraco.MacroEngines
@inherits DynamicNodeContext
@
{
<ul>
@foreach (var item in Model.Tagging.MultiNodePicker)
{
var node = Library.NodeById(item.InnerText);
if (node.Id != 0)
{
<li>@node.Name></li>
}
}
</ul>
}
您可能会发现将MultiNodePicker配置为以逗号分隔列表而不是xml保存节点要容易得多 - 那么您可以这样做:
@using umbraco.MacroEngines
@inherits DynamicNodeContext
@
{
<ul>
@foreach (var item in Model.Tagging)
{
var node = Library.NodeById(item);
if (node.Id != 0)
{
<li>@node.Name></li>
}
}
</ul>
}
如果没有其他理由将节点存储为XML,那么这可能是最简单的方法。