Array
(
)

Dúvidas com criação de Web Services e client para consumi-lo

Pjava
   - 26 jul 2012

Tenho o livro: Visual C# 2010 passo a passo da MS Press. Comecei a aprender escrever Web Services com C# e depois, claro, o client para consumir esse serviço. Bem, alguma coisa não ficou bem clara e gostaria de uma ajudinha de vocês:
1) No livro diz para eu abrir outra instância do VS2010, e manter o projeto do Web Service aberto, pois senão eu não conseguiria me conectar ao WS. É verdade, ou eu estou entendendo errado. Eu fiz um WS chamado: ProductInformation. Tenho que manter esse projeto e abrir outra instância do VS para criar um novo projeto? O livro fala, caso eu use o VS não Express, eu apenas crio um novo projeto, mas não está dando certo. Ele já tem um exemplo feito e eu não gostaria de usá-lo, mas sim, criar o meu próprio.
Preciso aprender a criar WS e client para consumi-los.

João Kiewel
   - 01 ago 2012

Existem duas maneiras:
- A maneira como explica no seu livro
- Publicando o webservice no IIS

Da maneira que seu livro explica, quando você abre o projeto do webservice e o executa, note que um pequeno ícone aparece no cantinho da tela junto ao relógio. Este ícone é um pequeno aplicativo que roda seu webservice sem precisar do IIS. Geralmente esse método é usado para finalidade de Debug, visto que o projeto está aberto e rodando e qualquer requisição ao mesmo pode ser "debugada". Para acessá-lo, na aplicação cliente(que consome o webservice), crie uma referência ao endereço informado naquele ícone(passe o mouse sobre ele para ver), incluindo a porta. Geralmente o endereço fica parecido com isso:

http://localhost:64533/SeuWebService.asmx

Onde 64533 é a porta onde o seu webservice está respondendo e "SeuWebService.asmx" é o nome do seu webservice.
Uma vez adicionada a referência à esse webservice, ele pode ser consumido normalmente.

A outra maneira, é publicar o seu webservice no IIS. Para fazer isso, clique com o botão direito no projeto do webservice e selecione a opção "Publish". Se você já tiver um diretório virtual no IIS para seu webservice, publique-o nele, ou você pode criar esse diretório virtual do próprio assistente de publicação. Para referenciar esse webservice publicado na aplicação cliente, o processo é o mesmo, adicione a referência web à ele, indicando o caminho da publicação que você fez.