public ImportarNfe(string pathXml) { var config = new ChoXmlRecordConfiguration(); config.NamespaceManager.AddNamespace("x", "http://www.portalfiscal.inf.br/nfe"); dynamic loadNota = new ChoXmlReader(pathXml, config); foreach (var dataNota in loadNota) { this.dataNota = dataNota.ContainsKey("infNFe") ? dataNota.infNFe : dataNota; break; } LoadDados(); LoadProdutos(); LoadFornecedor(); LoadPagamentos(); }
static void ConfigFirstTest() { List <ExpandoObject> objs = new List <ExpandoObject>(); dynamic rec1 = new ExpandoObject(); rec1.Id = 1; rec1.Name = "Mark"; rec1.IsActive = true; rec1.Message = new ChoCDATA("Test"); objs.Add(rec1); dynamic rec2 = new ExpandoObject(); rec2.Id = 2; rec2.Name = null; rec2.IsActive = true; rec2.Message = new ChoCDATA("Test"); objs.Add(rec2); ChoXmlRecordConfiguration config = new ChoXmlRecordConfiguration(); config.XmlRecordFieldConfigurations.Add(new ChoXmlRecordFieldConfiguration("Id")); config.XmlRecordFieldConfigurations.Add(new ChoXmlRecordFieldConfiguration("Name")); using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var writer = new StreamWriter(stream)) using (var parser = new ChoXmlWriter(writer, config).WithXPath("Employees/Employee")) { parser.Write(objs); writer.Flush(); stream.Position = 0; Console.WriteLine(reader.ReadToEnd()); } }
static void ConfigFirstDynamicTest() { ChoXmlRecordConfiguration config = new ChoXmlRecordConfiguration(); config.XmlRecordFieldConfigurations.Add(new ChoXmlRecordFieldConfiguration("Id")); config.XmlRecordFieldConfigurations.Add(new ChoXmlRecordFieldConfiguration("Name")); using (var stream = new MemoryStream()) using (var reader = new StreamReader(stream)) using (var writer = new StreamWriter(stream)) using (var parser = new ChoXmlReader(reader, config)) { writer.WriteLine(EmpXml); writer.Flush(); stream.Position = 0; object rec; while ((rec = parser.Read()) != null) { Console.WriteLine(rec.ToStringEx()); } } }