|
<< Click to Display Table of Contents >> Web Service .NET 3.5 |
![]() ![]()
|
Construindo um Web Service
File -> New -> Web Site

Faça esse código:
using System.Web.Services;
[WebService(Namespace = "http://www.meusite.com.br/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{
public Service()
{
}
[WebMethod(Description = "Método para consultar um cliente no servidor")]
public string ConsultarCliente(int codigo)
{
string[] lista = new string[5] {"Jessica", "Angelina", "Natalie", "Charlize", "Scarlet"};
return (codigo < 1 || codigo > 5) ? "ERR: Código inválido" : lista[codigo-1];
}
}
O WebMethod é que vai identificar a rotina que estamos "exportando" a chamada ConsultarCliente.
Se você rodar o Web Service vai aparece algo do tipo:

Clique sobre o Service.asmx:

Seu método está ali, vamos testar, clique nele! Olha que ele retorna um XML:

Agora, dê um botão direito no projeto e publish e pressione OK.
Rode o projeto e com o ASP.NET Development Server (fica do lado do relógio) pegue e copie o caminho.
Algo como: http://localhost:24093/WebServico/
Testando o Web Service
Agora no mesmo Solution, com botão direito, crie um novo ASP.NET Web Site e sete ele como Startup Project (botão direito no projeto).
Depois de adicionar um Default.aspx, clique com botão direito no projeto e Add Web Reference...
cole o endereço do Web Service e pressione Go To (botão verde)

Assim que mostrar os arquivos na tela, pressione o botão sobre o arquivo asmx, e dê um nome para referencia e pressione Add.
Nesse exemplo eu coloquei Consulta.
Vai aparece no VS:

Monte um aspx assim:
<asp:TextBox ID="txtCodigo" runat="server"></asp:TextBox>
<br />
<br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
<br />
<br />
<asp:Label ID="lblNome" runat="server"></asp:Label>
Clique do botão:
Consulta.Service servico = new Consulta.Service();
lblNome.Text = servico.ConsultarCliente(Int32.Parse(txtCodigo.Text));

Pronto, você está usando um Web Service!