public CreateAttribute ( string prefix, string localName, string namespaceURI, string value ) : void | ||
prefix | string | |
localName | string | |
namespaceURI | string | |
value | string | |
return | void |
public static void SetOrCreateXmlAttribute(XPathNavigator node, string localName, string namespaceURI, string value) { if (node.MoveToAttribute(localName, namespaceURI)) { node.SetValue(value); node.MoveToParent(); } else { node.CreateAttribute("", localName, namespaceURI, value); } }
public void SetXmlType(string name, string namespaceUri, XPathNavigator source) { namespaceUri = GetEffectiveNamespace(namespaceUri); var prefix = CreateNamespace(null, namespaceUri, source); source.CreateAttribute("xsi", "type", Xsi, GetQualifiedName(prefix, name)); }
public XPathNavigator CreateAttribute(string name, string namespaceUri, XPathNavigator source) { source.CreateAttribute(null, name, namespaceUri, ""); source.MoveToAttribute(name, namespaceUri ?? ""); return source; }
public string CreateNamespace(string prefix, string namespaceUri, XPathNavigator source) { if (string.IsNullOrEmpty(namespaceUri) == false) { source = source.Clone(); source.MoveToRoot(); source.MoveToChild(XPathNodeType.Element); if (string.IsNullOrEmpty(prefix)) prefix = AddNamespace(namespaceUri); var existing = source.GetNamespace(prefix); if (existing == namespaceUri) return prefix; if (string.IsNullOrEmpty(existing) == false) return null; source.CreateAttribute("xmlns", prefix, "", namespaceUri); } return prefix; }
private static void NormalizeNamespaces(XPathNavigator src, XPathNavigator dest) { IDictionary<string, string> dictLocal = src.GetNamespacesInScope(XmlNamespaceScope.ExcludeXml); IDictionary<string, string> dictExclude = dest.GetNamespacesInScope(XmlNamespaceScope.Local); foreach(KeyValuePair<string, string> pair in dictLocal) if(!dictExclude.ContainsKey(pair.Key)) dest.CreateAttribute("xmlns", pair.Key, "http://www.w3.org/2000/xmlns/", pair.Value); }
public bool MakeNil(XPathNavigator source) { if (source.NodeType == XPathNodeType.Element && IsNil(source) == false) { source.CreateAttribute("xsi", "nil", Xsi, "true"); return true; } return false; }
public XPathNavigator CreateAttribute(string name, string namespaceUri, XPathNavigator source) { name = XmlConvert.EncodeLocalName(name); source.CreateAttribute(null, name, namespaceUri, ""); source.MoveToAttribute(name, namespaceUri ?? ""); return source; }
public bool MakeNil(XPathNavigator source) { if (source.NodeType == XPathNodeType.Element && IsNil(source) == false) { if (source.LookupPrefix(Xsi) != "xsi") CreateNamespace("xsi", Xsi, source); source.CreateAttribute("xsi", "nil", Xsi, "true"); return true; } return false; }
public XPathNavigator CreateAttribute(string name, string namespaceUri, XPathNavigator source) { string prefix; name = XmlConvert.EncodeLocalName(name); if (IsRootNamespace(namespaceUri, out prefix)) prefix = CreateNamespace(prefix, namespaceUri, source); source.CreateAttribute(prefix, name, namespaceUri, ""); source.MoveToAttribute(name, namespaceUri ?? ""); return source; }
public static bool SetXmlStringAttributeValue(XPathNavigator parentNode, string valueName, string newValue) { if (parentNode == null || string.IsNullOrEmpty(valueName)) { return false; } try { XPathNavigator factory = parentNode.Clone(); do { factory.MoveToFirstAttribute(); if (string.Compare(factory.Name, valueName) == 0) { factory.SetValue(newValue); return true; } } while (!factory.MoveToNextAttribute()); parentNode.CreateAttribute(string.Empty, valueName, string.Empty, newValue); return true; } catch (ArgumentNullException) { } catch (InvalidOperationException) { } return false; }