我正在为/ base写一个RestExtension。 我有以下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using umbraco.presentation.umbracobase;
using umbraco.NodeFactory;
namespace ElkeslasiBase
{
[RestExtension("Collections")]
public class Collection
{
[RestExtensionMethod()]
public static string GetCollection(string collectionID)
{
var currentNode = Node.GetCurrent();
var SelectedCollection = currentNode.ChildrenAsList.Where(elm => elm.Name == collectionID);
return collectionID;
}
}
}
问题是编译器抛出了lambda表达式的错误。
Delegate 'System.Func<umbraco.interfaces.INode,int,bool>' does not take 1 argument
从谷歌的挖掘中,我发现有几个人正是这样做的。也许我错过了一个参考?或者别的什么?
答案 0 :(得分:2)
我终于找到了一个更新的例子。 linq代码应如下所示:
Node SelectedCollection = currentNode.Children.OfType<Node>().Where(elm => elm.Name == collectionID).SingleOrDefault();
那是我生命中的三个小时,我永远不会回来......