private string TraverseTree(IQueryItem item)
        {
            if (item is IConnectorItem)
            {
                IConnectorItem conn         = item as IConnectorItem;
                StringBuilder  buffer       = new StringBuilder();
                string         leftRequest  = TraverseTree(_queryNodes[conn.LeftChild]);
                string         rightRequest = TraverseTree(_queryNodes[conn.RightChild]);
                buffer.AppendFormat("({0} {1} {2})", leftRequest, conn.FilterType.ToString(), rightRequest);

                return(buffer.ToString());
            }
            else
            {
                ILeafItem leaf = item as ILeafItem;
                return(BuildSearchString(leaf));
            }
        }
Exemple #2
0
 public void GetConnectorItem(out IConnectorItem item)
 {
     item        = new ConnectorItem();
     item.NodeId = _itemCounter++;
 }