protected ControllerNodeSet CreateExpression(string rootElement, params System.String[] attributes) { foreach (XPathNavigator node in _nodes) { ControllerNodeSet nodeSet = new ControllerNodeSet(this, node); ControllerNodeSet rootNode = nodeSet.Select(rootElement); if (rootNode.Nodes.Count == 0) { Select(String.Format("<{0}/>", rootElement)).AppendTo(nodeSet); rootNode = nodeSet.Select(rootElement); } ControllerNodeSet expressionNode = nodeSet.Select("expression[1]"); if (expressionNode.Nodes.Count == 0) { Select("<expression/>").AppendTo(rootNode); expressionNode = rootNode.Select("expression"); } int i = 0; while (i < attributes.Length) { expressionNode.Attr(attributes[i], attributes[(i + 1)]); i = (i + 2); } } return(this); }
public ControllerNodeSet CreateActionGroup(string id) { ControllerNodeSet actionGroupNode = new ControllerNodeSet(_navigator, _resolver).Select("<actionGroup/>").AppendTo("/dataController/actions").Select("/dataController/actions/actionGroup[last()]"); if (!(String.IsNullOrEmpty(id))) { actionGroupNode.Attr(id); } return(actionGroupNode); }
/// <summary> ///Appends a collection specified by the argument to each node in the node sets. ///</summary> ///<param name="nodeSet">The collection of child nodes.</param> ///<returns>The collection of child nodes after they were appended to the nodes in the original node set.</returns> public ControllerNodeSet AppendTo(ControllerNodeSet nodeSet) { foreach (XPathNavigator node in this._nodes) { foreach (XPathNavigator parentNode in nodeSet._nodes) { parentNode.AppendChild(node.OuterXml); } } return(nodeSet); }
/// <summary> ///Create a new static item for this field. ///</summary> ///<param name="value">Value of the item stored in the database.</param> ///<param name="text">Text of the item presented to the user.</param> ///<returns>The node set containing the field.</returns> public ControllerNodeSet CreateItem(object value, string text) { ControllerNodeSet itemsNode = Select("items"); if (itemsNode.Nodes.Count == 0) { Select("<items/>").AppendTo(this); itemsNode = Select("items").Attr("style", "DropDownList"); } Select("<item/>").AppendTo(itemsNode).Select("item[last()]").Attr("value", value).Attr("text", text); return(this); }
private ControllerNodeSet SetProperty(string name, object value, params System.String[] requiresElement) { foreach (XPathNavigator node in _nodes) { ControllerNodeSet nodeSet = new ControllerNodeSet(this, node); if (Array.IndexOf(requiresElement, node.Name) >= 0) { nodeSet.Elem(name, value); } else { nodeSet.Attr(name, value); } } return(this); }
protected ControllerNodeSet SelectFieldItemsNode() { List <XPathNavigator> list = new List <XPathNavigator>(); foreach (XPathNavigator node in _nodes) { ControllerNodeSet parentNode = new ControllerNodeSet(this, node); ControllerNodeSet itemsNode = parentNode.Select("items"); if (itemsNode.Nodes.Count == 0) { parentNode.Select("<item/>").AppendTo(parentNode); itemsNode = parentNode.Select("items"); } list.AddRange(itemsNode.Nodes); } return(new ControllerNodeSet(this, list)); }
public ControllerNodeSet CreateAction(string commandName, string commandArgument, string id) { ControllerNodeSet actionNode = Select("<action/>").AppendTo(this).Select("action[last()]"); if (!(String.IsNullOrEmpty(id))) { actionNode.Attr("id", id); } if (!(String.IsNullOrEmpty(commandName))) { actionNode.Attr("commandName", commandName); } if (!(String.IsNullOrEmpty(commandArgument))) { actionNode.Attr("commandArgument", commandArgument); } return(actionNode); }
public ControllerNodeSet SelectDataFields(params System.String[] fieldNames) { List <XPathNavigator> list = new List <XPathNavigator>(); foreach (XPathNavigator node in _nodes) { ControllerNodeSet nodeSet = new ControllerNodeSet(this, node); if (fieldNames.Length == 0) { list.AddRange(nodeSet.SelectInContext("dataField", "dataField").Nodes); } else { list.AddRange(nodeSet.SelectInContext("dataField", "dataField[@fieldName=$fieldName]", fieldNames).Nodes); } } return(new ControllerNodeSet(this, list)); }
public ControllerNodeSet CreateCategory(string id, string headerText) { foreach (XPathNavigator node in _nodes) { ControllerNodeSet parentNode = new ControllerNodeSet(this, node); ControllerNodeSet categoriesNode = parentNode; if (node.Name != "categories") { categoriesNode = parentNode.Select("categories|ancestor::categories[1]"); if (categoriesNode.Nodes.Count == 0) { Select("<categories/>").AppendTo(parentNode); categoriesNode = parentNode.Select("categories"); } } return(Select("<category/>").AppendTo(categoriesNode).Select("category[last()]").Attr("id", id).Attr("headerText", headerText).Elem("dataFields", null)); } return(this); }
public ControllerNodeSet CreateDataField(string fieldName, string aliasFieldName) { foreach (XPathNavigator node in _nodes) { ControllerNodeSet parentNode = new ControllerNodeSet(this, node); ControllerNodeSet dataFieldsNode = parentNode; if (node.Name != "dataFields") { dataFieldsNode = parentNode.Select("dataFields|ancestor::dataFields[1]"); if (dataFieldsNode.Nodes.Count == 0) { Select("<dataFields/>").AppendTo(parentNode); dataFieldsNode = parentNode.Select("dataFields"); } } ControllerNodeSet dataFieldNode = Select("<dataField/>").AppendTo(dataFieldsNode).Select("dataField[last()]").Attr("fieldName", fieldName); if (!(String.IsNullOrEmpty(aliasFieldName))) { dataFieldNode.Attr("aliasFieldName", aliasFieldName); } return(dataFieldNode); } return(this); }
public ControllerNodeSet(ControllerNodeSet nodeSet, List <XPathNavigator> nodes) { this._navigator = nodeSet._navigator; this._resolver = nodeSet._resolver; this._nodes = nodes; }
public ControllerNodeSet(ControllerNodeSet nodeSet, XPathNavigator node) : this(nodeSet, new List <XPathNavigator>()) { _nodes.Add(node); }
public ControllerNodeSet(ControllerNodeSet nodeSet) : this(nodeSet._navigator, nodeSet._resolver) { }