Consulta SeFaz - DLL

  • Thread starter Thread starter Josivan Laskoski
  • Start date Start date
J

Josivan Laskoski

Guest
Bom dia Pessoal,

Tenho Opaco desenvolver UMA consulta na SEFAZ, SERVIÇO POR web, entao ESTOU Fazendo los hum Projeto SERVIÇO web par Fazer C # e DEPOIS de Testado Tão Passo TODO o codigo Parágrafo UMA DLL.

Meu Problema ESTA na seguinte situacao, Tudo o Que de Fato E configuração Parágrafo Conexão com o web service FICA Localidade: Não ARQUIVO Web.config e Eu Tenho Que transcrever ESSES Dados Parágrafo Dentro da Minha classe.

Parte Disso eu JÁ Fiz, porem ágora eu Preciso Fazer com Que o BasicHttpBinding se ligue AO CustomBinding, segue Meu codigo da classe:


private List<CadConsultaWeb.CadConsultaCadastro2Soap12> fields = new List<CadConsultaWeb.CadConsultaCadastro2Soap12>();
private BasicHttpBinding basicHttpBinding = new BasicHttpBinding() { MaxBufferSize = int.MaxValue, MaxReceivedMessageSize = int.MaxValue };
private EndpointAddress endpointAddress = new EndpointAddress("https://homologacao.nfe.fazenda.sp.gov.br/nfeweb/services/CadConsultaCadastro2.asmx");
private CadConsultaWeb.CadConsultaCadastro2Soap12Client wsTransacional;
private CadConsultaWeb.nfeCabecMsg cab = new CadConsultaWeb.nfeCabecMsg();
//private HttpProxyCredentialType credencial = new HttpProxyCredentialType.Digest;
private string retorno = "";

public void configuraWebConfig(string _caminhoCertificadoDigital, string _senhaCertificadoDigital)
{
//TextMessageEncodingBindingElement textEncBE = new TextMessageEncodingBindingElement(MessageVersion.Soap12, System.Text.Encoding.UTF8);



CustomBinding customBinding = new CustomBinding();
HttpsTransportBindingElement httpstransport = new HttpsTransportBindingElement();
httpstransport.RequireClientCertificate = true;
httpstransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Digest;
customBinding.Elements.Add(httpstransport);

basicHttpBinding.Name = "CadConsultaCadastro2Soap12";
basicHttpBinding.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport;
basicHttpBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate;



wsTransacional = new CadConsultaWeb.CadConsultaCadastro2Soap12Client(basicHttpBinding, endpointAddress);
wsTransacional.Endpoint.Binding = basicHttpBinding;
wsTransacional.Endpoint.Address = endpointAddress;
wsTransacional.Endpoint.Name = "CadConsultaCadastro2Soap12";
wsTransacional.Endpoint.Contract.Name = "CadConsultaWeb.CadConsultaCadastro2Soap12";

//wsTransacional.ClientCredentials.HttpDigest.ClientCredential.Domain = _caminhoCertificadoDigital;
//wsTransacional.ClientCredentials.HttpDigest.ClientCredential.UserName = _senhaCertificadoDigital;
X509Certificate2 certificado = new X509Certificate2(_caminhoCertificadoDigital, _senhaCertificadoDigital);
wsTransacional.ClientCredentials.ClientCertificate.Certificate = certificado;


}

Preciso Ligar o Meu customBinding com o Meu basicHttpBinding, mas nao sei de Opaco forma POSSO Fazer ISSO, Parágrafo Que hum esteja Dentro do Outro.

E ESSA EA Parte Que Eu Tenho Que transcrever Parágrafo Dentro da classe Que esta no Meu Web.config:


<system.serviceModel>
<bindings>
<customBinding>
<binding name="CadConsultaCadastro2Soap12
<textMessageEncoding messageVersion="Soap12" />
<httpsTransport authenticationScheme="Digest" requireClientCertificate="true" />
</binding>
</customBinding>
</bindings>
<client>
<endpoint address="https://homologacao.nfe.fazenda.sp.gov.br/nfeweb/services/CadConsultaCadastro2.asmx"
binding="customBinding" bindingConfiguration="CadConsultaCadastro2Soap12"
contract="CadConsultaWeb.CadConsultaCadastro2Soap12" name="CadConsultaCadastro2Soap12" />
</client>
</system.serviceModel>


Obrigado

Continue reading...
 
Back
Top