none
Distribuir client que utiliza um serviço wcf RRS feed

  • Pergunta

  • Bom dia pessoal, gostaria de pedir a ajuda para o seguinte problema.
    Fiz um WCF e está publicado apontando para um ip externo..tudo certinho.
    Fiz um cliente que utiliza alguns métodos do wcf.. quando adiciono referencia ao serviço ele traz meus endpoints e grava no arquivo app.config.. tudo certo tb.. executo o cliente e ele funciona perfeitamente.. o que gostaria de saber é o seguinte?

    Como devo distribuir esse cliente para os usuários? o arquivo app.config deve ir junto? digo isso pq estou mandando o executável e o app.config mas quando está em uma máquina diferente da minha ele me retorna o erro

    this might be because no configuration file was found for your application.

    obrigado

    sexta-feira, 23 de agosto de 2013 17:54

Respostas

  • Olá Eric,

    De uma olhada no seguinte código onde é adicionada uma App.config para o projeto EchoSelfHostConsole

    <?xml version="1.0" encoding="utf-8"?>
     
    <configuration>
      <system.serviceModel>
        <behaviors>
          <serviceBehaviors>
            <behavior name="BehaviourMetaData">
              <serviceMetadata httpGetEnabled="true" />
            </behavior>
          </serviceBehaviors>
        </behaviors>
        <services>
          <service name="WcfServiceLibrary.Echo.EchoService" 
                   behaviorConfiguration="BehaviourMetaData">
            <endpoint address="http://localhost:8080/EchoService"
                      binding="basicHttpBinding"
                      contract="WcfServiceLibrary.Echo.IEchoService" />
          </service>
        </services>
      </system.serviceModel>
    </configuration>

    E também creio que esse site possa te auxiliar: http://www.remondo.net/configure-wcf-service-app-config/

    Quanto ao app.config você não deve envia-lo para os usuários pois se você enviar, eles poderão alterar o conteúdo do arquivo de configuração da sua aplicação.

    Envie junto com o executável o arquivo de configuração gerado na pasta bin: sua_aplicação.exe.config.

    Att,


    Giovani Cruzara – Microsoft Contingent Staff

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    TechNet Community Support

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Marcado como Resposta Eric Miranda segunda-feira, 26 de agosto de 2013 19:29
    segunda-feira, 26 de agosto de 2013 17:53
  • Olá Eric,

    Esse erro pode aparecer se você estiver usando o serviço em uma "library class" e essa "library class" está em outro projeto.

    Tente incluir o  "WS Configuration settings" nos projetos principais "app.config"

    Tente realizar o procedimento e nos diga o resultado,

    Att, 

    ______________________________________________________________

    Se a resposta resolveu seu problema não esqueça de "Marcar como resposta".

    
    
    
    
    sexta-feira, 23 de agosto de 2013 23:13

Todas as Respostas

  • Olá Eric,

    Esse erro pode aparecer se você estiver usando o serviço em uma "library class" e essa "library class" está em outro projeto.

    Tente incluir o  "WS Configuration settings" nos projetos principais "app.config"

    Tente realizar o procedimento e nos diga o resultado,

    Att, 

    ______________________________________________________________

    Se a resposta resolveu seu problema não esqueça de "Marcar como resposta".

    
    
    
    
    sexta-feira, 23 de agosto de 2013 23:13
  • Boa tarde Giovani..

    Desculpe mas não entendi muito bem o que você me pediu para fazer..

    Se for para configurar meu app.config.. ele está hoje da seguinte forma..

    Uma outra dúvida é.. o app.config deve ser distribuído com o executável?

    obrigado

    <?xml version="1.0"?>
    <configuration>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
        </startup>
        <system.serviceModel>
            <bindings>
                <basicHttpBinding>
                    <binding name="BasicKraftMobileService"/>
                </basicHttpBinding>
            </bindings>
            <client>
                <endpoint address="http://200.170.114.190/kraftmobileservice/KraftMobileService.svc" 
                          binding="basicHttpBinding" bindingConfiguration="BasicKraftMobileService" 
            contract="KraftMobileServiceReference.IKraftMobileService" name="BasicKraftMobileService"/>
            </client>
        </system.serviceModel>
    </configuration>
    segunda-feira, 26 de agosto de 2013 16:13
  • Olá Eric,

    De uma olhada no seguinte código onde é adicionada uma App.config para o projeto EchoSelfHostConsole

    <?xml version="1.0" encoding="utf-8"?>
     
    <configuration>
      <system.serviceModel>
        <behaviors>
          <serviceBehaviors>
            <behavior name="BehaviourMetaData">
              <serviceMetadata httpGetEnabled="true" />
            </behavior>
          </serviceBehaviors>
        </behaviors>
        <services>
          <service name="WcfServiceLibrary.Echo.EchoService" 
                   behaviorConfiguration="BehaviourMetaData">
            <endpoint address="http://localhost:8080/EchoService"
                      binding="basicHttpBinding"
                      contract="WcfServiceLibrary.Echo.IEchoService" />
          </service>
        </services>
      </system.serviceModel>
    </configuration>

    E também creio que esse site possa te auxiliar: http://www.remondo.net/configure-wcf-service-app-config/

    Quanto ao app.config você não deve envia-lo para os usuários pois se você enviar, eles poderão alterar o conteúdo do arquivo de configuração da sua aplicação.

    Envie junto com o executável o arquivo de configuração gerado na pasta bin: sua_aplicação.exe.config.

    Att,


    Giovani Cruzara – Microsoft Contingent Staff

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    TechNet Community Support

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    • Marcado como Resposta Eric Miranda segunda-feira, 26 de agosto de 2013 19:29
    segunda-feira, 26 de agosto de 2013 17:53
  • Boa Giovani... era o arquivo .config que eu não estava enviando, por isso estava dando errado..

    Muito obrigado pela ajuda..

    segunda-feira, 26 de agosto de 2013 19:30