示例#1
0
        public void WsRecNfe()
        {
            RecNfe.NfeRetAutorizacao wsSer = new RecNfe.NfeRetAutorizacao();
            RecNfe.nfeCabecMsg       wsCab = new RecNfe.nfeCabecMsg();

            wsCab.cUF              = "51";
            wsCab.versaoDados      = "3.10";
            wsSer.nfeCabecMsgValue = wsCab;


            X509Certificate2Collection lcerts;
            X509Store lStore = new X509Store(StoreName.My, StoreLocation.LocalMachine);

            // Abre o Store
            lStore.Open(OpenFlags.OpenExistingOnly);

            // Lista os certificados
            lcerts = lStore.Certificates;
            bool   LocCert  = false;
            string NumSerie = "79B1801522204BB8";

            foreach (X509Certificate2 tpcert in lcerts)
            {
                if (tpcert.SerialNumber == NumSerie)
                {
                    cert    = tpcert;
                    LocCert = true;
                }
            }
            if (LocCert)
            {
                wsSer.ClientCertificates.Add(cert);
                wsSer.SoapVersion = System.Web.Services.Protocols.SoapProtocolVersion.Soap12;
                XmlRetorno        = wsSer.nfeRetAutorizacaoLote(XmlEnvio).OuterXml;
            }
            else
            {
                MessageBox.Show("O Certificado com o Número de Série " + NumSerie + " não foi encontrado.");
            }

            lStore.Close();
        }
示例#2
0
        public void WsRecNfe()
        {
            RecNfe.NfeRetAutorizacao wsSer = new RecNfe.NfeRetAutorizacao();
            RecNfe.nfeCabecMsg wsCab = new RecNfe.nfeCabecMsg();

            wsCab.cUF = "51";
            wsCab.versaoDados = "3.10";
            wsSer.nfeCabecMsgValue = wsCab;

            X509Certificate2Collection lcerts;
            X509Store lStore = new X509Store(StoreName.My, StoreLocation.LocalMachine);

            // Abre o Store
            lStore.Open(OpenFlags.OpenExistingOnly);

            // Lista os certificados
            lcerts = lStore.Certificates;
            bool LocCert = false;
            string NumSerie = "79B1801522204BB8";

            foreach (X509Certificate2 tpcert in lcerts)
            {
                if (tpcert.SerialNumber == NumSerie)
                {
                    cert = tpcert;
                    LocCert = true;
                }
            }
            if (LocCert)
            {
                wsSer.ClientCertificates.Add(cert);
                wsSer.SoapVersion = System.Web.Services.Protocols.SoapProtocolVersion.Soap12;
                XmlRetorno = wsSer.nfeRetAutorizacaoLote(XmlEnvio).OuterXml;
            }
            else
            {
                MessageBox.Show("O Certificado com o Número de Série " + NumSerie + " não foi encontrado.");
            }

            lStore.Close();
        }