示例#1
0
        public XPathNavigator Execute(object param, bool raiseExceptions)
        {
            try
            {
                NodeQuery queryFromXml = NodeQuery.Parse(((XPathNavigator)param).OuterXml);
                var result = queryFromXml.Execute();

                Result queryResult = new Result()
                {
                    ContentList =
                        result.Nodes.Select(
                            node => new SenseNet.Services.ContentStore.Content(node)).ToArray()
                };

                return queryResult.ToXPathNavigator();
            }
            catch (Exception exc) //logged
            {
                if (raiseExceptions)
                    throw;
                Logger.WriteException(exc);
                return new QueryException() { Message = exc.Message }.ToXPathNavigator();
            }
        }