如何将两个NodebyID合并为一个变量?

时间:2014-12-06 12:11:01

标签: c# razor umbraco

我正在使用Umbraco,我想将两个变量一起添加到两个孩子中。

var nodes = Model.NodeById(1195).Children();
var nodes2 = Model.NodeById(1201).Children();

var test = Model.NodesById(nodes, nodes2);

它不起作用并抛出错误。还有另一种方法吗? 我在论坛上找到了这个,但它似乎对我不起作用。

link:http://our.umbraco.org/forum/developers/razor/47078-how-to-merger-DynamicNode?p=0#comment168589

2 个答案:

答案 0 :(得分:0)

也许这样的事情?

DynamicNodeList nodes = Model.NodeById(1195).Children();
DynamicNodeList nodes2 = Model.NodeById(1201).Children();

var allNodes = nodes.Concat(nodes2);

答案 1 :(得分:0)

有点原始(但不知道更多的上下文)这样的事情应该有效:

string parentIds = "1195,1201";
string[] parentArray = parentIds.Split(',');

DynamicNodeList allNodes = new DynamicNodeList();

foreach (var x in parentArray);
    foreach (var y in Library.NodeById(x).Children()) {
         var thisNode = Library.NodeById(y);
         if (thisNode.Id != 0)  {
             allNodes.Add(thisNode);
         }
    }
}