private string GerarQRCode(XmlDocument nfce) { QRCode qr = new QRCode(); if (string.IsNullOrWhiteSpace(IDToken)) { throw new Exception("Informe um ID Tokem"); } if (string.IsNullOrWhiteSpace(CSC)) { throw new Exception("Informe um CSC"); } DataSet ds = new DataSet(); XmlReader xmlReader = new XmlNodeReader(nfce); ds.ReadXml(xmlReader); qr.ChNfe = ds.Tables["infNFe"].Rows[0]["Id"].ToString().Replace("NFe", ""); qr.NVersao = "2"; qr.TpAmb = ds.Tables["ide"].Rows[0]["tpAmb"].ToString(); qr.DhEmi = ds.Tables["ide"].Rows[0]["dhEmi"].ToString(); qr.VNF = ds.Tables["ICMSTot"].Rows[0]["vNF"].ToString(); if (ds.Tables["dest"] != null) { if (ds.Tables["dest"].Columns["CNPJ"] != null) { qr.CDest = ds.Tables["dest"].Rows[0]["CNPJ"].ToString(); } else if (ds.Tables["dest"].Columns["CPF"] != null) { qr.CDest = ds.Tables["dest"].Rows[0]["CPF"].ToString(); } } qr.VICMS = ds.Tables["ICMSTot"].Rows[0]["vICMS"].ToString(); qr.DigVal = ds.Tables["Reference"].Rows[0]["DigestValue"].ToString(); qr.CIdToken = IDToken.Replace(" ", ""); qr.Csc = CSC; qr.URL = WebServiceNFCe.URLQRCode; qr.VersaoXML = ds.Tables["infNFe"].Rows[0]["versao"].ToString(); qr.Contingencia = ds.Tables["ide"].Rows[0]["tpEmis"].ToString() == "9"; qr.GerarURLQRCode(); return($"<![CDATA[{qr.TextQRCode}]]>"); }