protected async void btnValidarDUE_Click(object sender, EventArgs e) { if (this.txtUpload.PostedFile != null) { if (this.txtUpload.PostedFile.ContentLength > 0) { using (StreamReader reader = new StreamReader(this.txtUpload.PostedFile.InputStream)) { StringBuilder conteudo = new StringBuilder(); XmlDocument document = new XmlDocument(); document.Load(reader); var validarXML = new ValidarXML(); var retorno = await validarXML.Validar(document); foreach (var erro in retorno.Mensagens) { ModelState.AddModelError(string.Empty, erro); } ViewState["RetornoSucesso"] = retorno.Sucesso; ViewState["Debug"] = retorno.Debug; document.Save(Path.Combine(Server.MapPath("Uploads"), "NOVO_" + this.txtUpload.PostedFile.FileName + "SS")); var due = dueDAO.ObterDUEPorNumero(retorno.NumeroDUE); if (due != null) { dueDAO.AtualizarXMLRetorno(due.Id, retorno.XmlRetorno); SalvarTXT(due.DUE, conteudo); } } } } }
private async System.Threading.Tasks.Task ValidarXMLAsync(int id) { var arquivo = new GerarXML(); arquivo.DUEId = id; arquivo.Validar(ModelState); if (!ModelState.IsValid) { return; } arquivo.Gerar(); var validarXML = new ValidarXML(); var xml = dueDAO.ObterUltimoXMLGerado(arquivo.DUEId); XmlDocument documentoXML = new XmlDocument(); documentoXML.LoadXml(xml); var retorno = await validarXML.Validar(documentoXML); ViewState["RetornoSucesso"] = retorno.Sucesso; dueDAO.AtualizarXMLRetorno(id, retorno.XmlRetorno); alertaValidacao.Visible = retorno.Sucesso; if (retorno.Mensagens.Count > 0 & retorno.XmlRetorno != null) { alertaValidacao.Visible = true; ViewState["RetornoSucesso"] = null; } if (!retorno.Sucesso & retorno.XmlRetorno == null) { foreach (var erro in retorno.Mensagens) { ModelState.AddModelError(string.Empty, erro); } } else if (!retorno.Sucesso & retorno.XmlRetorno != null) { //Response.Redirect("ArquivoXML.aspx?id=" + id + "&dest=SALVAR&tipo=RETORNO", false); StringBuilder conteudo = new StringBuilder(); foreach (var erro in retorno.Mensagens) { conteudo.AppendLine(erro); } SalvarTXT(arquivo.DUE.DUE, conteudo); } }