public static TNFe GeraAssinatura(this TNFe nfe, X509Certificate2 certificate) { if (string.IsNullOrEmpty(nfe.infNFe.Id)) { nfe.CalculaChave(); } var nfeXml = new XmlDocument(); nfeXml.LoadXml(nfe.Serialize().LimpaNamespaces()); nfe.Signature = AssinadorXml.GeraAssinatura(nfeXml, "infNFe", certificate); return(nfe); }
public TNFe AssinarNFE(TNFe nota, string pUri) { var arquivoNaoAssinado = new XmlDocument(); arquivoNaoAssinado.LoadXml(Funcoes.RemoveNameSpaceFromXml(nota.Serialize())); var auxDocXML = CertificadoDigital.Assinar(arquivoNaoAssinado, pUri, Certificado); auxDocXML.Save(nota.NomeArquivo); var retorno = TNFe.LoadFromFile(nota.NomeArquivo); retorno.NomeArquivo = nota.NomeArquivo; retorno.ArquivoXML = auxDocXML; return(retorno); }