リスト項目の数を返す DynamicNodeList のプロパティまたは関数はありますか。
これは私のコードです:
var root = Model.NodeById(id);
var nodes = root.Descendants("ChartItem");
if (nodes.GetLength() > 0)
{
s = s + "<ul>";
}
しかし、GetLengthは有効な関数ではありません。私は何をすべきか?
Count() と呼ばれる IEnumerable 型の組み込み拡張メソッドがあり、それはまさにそれを行い、アイテムをカウントします:)
以下のコードを参照してください。
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
私は試してみます(nullチェックが必要かどうか、またはDescendants()が少なくとも空のリストを返すかどうかはわかりません)
nodes != null && nodes.Count() >0
また
nodes != null && nodes.Any()