DynamicNodeList是否有任何屬性或函數返回列表項的數量。如何查找DynamicNodeList中的項目數量?
這是我的代碼:
var root = Model.NodeById(id);
var nodes = root.Descendants("ChartItem");
if (nodes.GetLength() > 0)
{
s = s + "<ul>";
}
但對GetLength是不是有效的函數。我該怎麼辦?
DynamicNodeList是否有任何屬性或函數返回列表項的數量。如何查找DynamicNodeList中的項目數量?
這是我的代碼:
var root = Model.NodeById(id);
var nodes = root.Descendants("ChartItem");
if (nodes.GetLength() > 0)
{
s = s + "<ul>";
}
但對GetLength是不是有效的函數。我該怎麼辦?
有一個內置在了IEnumerable類型的名爲count(擴展方法),它做到了這一點,它計算的項目:)
下面見代碼:
var root = Model.NodeById(id);
var nodes = root.Descendants("ChartItem");
if (nodes.Count() > 0)
{
s = s + "<ul>";
}
試試這個代碼:
var root = Model.NodeById(id);
var nodes = root.Descendants("ChartItem");
int nodesCount = 0;
foreach (var node in nodes)
{
nodesCount += 1;
}
if (nodesCount > 0)
{
s = s + "<ul>";
}
看這裏
http://umbraco.com/follow-us/blog-archive/2011/12/22/umbraco-5-rc1-is-out-today.aspx
我會嘗試(不知道是否需要空校驗,或者如果後代()返回至少一個空列表)
nodes != null && nodes.Count() >0
或
nodes != null && nodes.Any()
你不有nodes.Count()可用? – Jonathan