Exemplo n.º 1
0
 public FilteredElement(XmlElement element, IXmlToClrAdapter adapter)
 {
     this.Element = element;
     this.Name    = adapter.GetClrName(element.LocalName, element.Prefix, element.NamespaceURI);
     if (this.Element.HasAttributes)
     {
         this.Attributes = Enumerable.Where <XmlAttribute>(Enumerable.OfType <XmlAttribute>((IEnumerable)this.Element.Attributes), (Func <XmlAttribute, bool>)(attrib => adapter.ShouldProcessAttribute(attrib.LocalName, attrib.Prefix, attrib.NamespaceURI)));
     }
     if (!this.Element.HasChildNodes)
     {
         return;
     }
     this.ChildElements = Enumerable.Where <XmlElement>(Enumerable.Select <XmlNode, XmlElement>(Enumerable.Where <XmlNode>(Enumerable.OfType <XmlNode>((IEnumerable)this.Element.ChildNodes), (Func <XmlNode, bool>)(node => node is XmlElement)), (Func <XmlNode, XmlElement>)(node => (XmlElement)node)), (Func <XmlElement, bool>)(elem => adapter.ShouldProcessElement(elem.LocalName, elem.Prefix, elem.NamespaceURI)));
 }
Exemplo n.º 2
0
 public static void Import(string xmlFileName, IXmlToClrAdapter resolver)
 {
     new XmlToClrImporter(resolver).ImportFromFile(xmlFileName);
 }
Exemplo n.º 3
0
 private XmlToClrImporter(IXmlToClrAdapter resolver)
 {
     this.xmlToClrAdapter       = resolver;
     this.stringTypeDescription = XmlToClrImporter.ClrTypeDescription.CreateLeaf(this.xmlToClrAdapter.StringType);
     this.leafTypes.Add(this.stringTypeDescription);
 }