WebMobile Edição 4
Esse artigo faz parte da revista WebMobile Edição 4. Clique aqui para ler todos os artigos desta edição

Leitura obrigatória: Web Mobile 2, Smartphone com .NET.

Na primeira parte deste tutorial, você aprendeu a criar uma aplicação para Smartphone com alguns controles de usuário. Já neste artigo, mostrarei o uso e o acesso a um banco de dados através do Smartphone, a criação de um web service com alguns métodos, utilização do ADO.NET para acesso a dados e, por fim, o consumo desses dados no Smartphone.

Os dispositivos Smartphones ainda não dispõem de capacidade de armazenamento de um banco de dados como o SQL Server CE devido a limitações de memória e processamento. Isso porque estamos falando da versão atual do sistema operacional Windows Mobile 2003 Second Edition. Já a futura versão, codename Magneto, suportará o uso do SQL Server CE no dispositivo. Entretanto, isso somente quando for lançado, tanto o sistema operacional quanto os dispositivos.

No entanto, os recursos de transmissão rápida de dados no Smartphone através de GPRS, permitem consumir um web service, que por sua vez encapsula toda a regra de negócio para efetuar tal conexão e enviar ao dispositivo exatamente os dados solicitados. O melhor de tudo é que esse mesmo web service poderá ser consumido em qualquer tipo de aplicação .NET, ou ainda, em qualquer tipo de plataforma.

Criando o web service

O conceito e o uso de web service estão ganhando um mercado muito importante para integrar aplicações, sistemas e plataformas, seja em .NET, Java ou outra utilizada no mercado. O Visual Studio é uma ferramenta fundamental para criar, instanciar e consumir um web service, pois a facilidade de uso e reaproveitamento de código é enorme, desde a criação de um proxy até o uso de diversas linguagens.

Um web service é uma classe a ser exposta na web através de HTTP, utilizando o protocolo de comunicação SOAP (Simple Object Access Protocol). O tipo de retorno de dados pode ser um Dataset, String, Integer, Double e Array dentre outro.

Para criar um web service, abra o Visual Studio .NET 2003, selecione o menu File / New / Project e digite as opções conforme a Figura 1. Observe que a linguagem será o VB.NET, o Template é ASP.NET Web Service Application e o Location será em http://localhost/WSTutorialSphone. Isso significa que será criada uma aplicação similar a uma ASP.NET, que usa o Internet Information Server (IIS) para ser acessada, afinal, o web service será executado via HTTP.

 

image001.png

Figura 1. Criação do web service.

 

Clique em OK e note que será criado automaticamente o site virtual no IIS. No Solution Explorer, é criado um web service default chamado Service1.asmx, portanto, exclua-o.

No Solution Explorer, clique com o botão direito sobre o nome do projeto WSTutorialSphone e selecione Add / Add Web Service. Dê o nome de bancodados e clique em Open. Será exibida uma janela sem nenhuma interface. Como vamos digitar um código, pressione F7 para exibir a respectiva janela. Nesse momento, note que há um web service famoso chamado HelloWorld que está comentado no código.

Isso é apenas um exemplo, mas convenhamos que não há nenhuma novidade para quem já criou algum tipo de função, ou seja, é uma Function que retorna uma String. A diferença básica é que há a declaração do atributo &lf;WEBMETHODgf;, e é exatamente isso que irá expor essa função na web através de HTTP.

 

   

    'Public Function HelloWorld() As String

    '   Return "Hello World"

    'End Function

 

Observe que na primeira linha do código é referenciado o namespace System.Web.Services, que contém classes que permitem a criação de XML Web Services. Como vamos acessar o banco de dados Northwind do SQL Server, é preciso declarar o seguinte namespace na lista de Imports:

 

Imports System.Data.SqlClient

 

Esse namespace foi criado apenas para o SQL Server 7.0 ou superior e contém um algoritmo customizado para acessar o SQL Server de forma mais rápida do que se fosse através de OleDB. No entanto, é fato dizer que isso tudo depende do volume de dados a serem lidos, pois também é possível acessar o SQL Server via OleDB.

Qualquer tipo de conexão com um banco de dados precisa da string de conexão. O .NET permite que essa string seja armazenada no arquivo de configuração Web.Config. Com isso, você poderá utilizá-la em qualquer web service, basta ler a chave.

Para criar uma chave, abra o arquivo Web.Config a partir do Solution Explorer, localize no final do arquivo a tag e antes dessa linha, digite o seguinte código:

 

  ppSettings>

       <add key="conexaoSQL" value="Database=Northwind;server=(local);user id=sa"/>

  ppSettings>

configuration>

 

A tag informa que usaremos uma área de configuração criada pelo usuário. Nesse caso, criamos uma chave chamada conexaoSQL que contém o valor com a string completa de conexão com o banco de dados Northwind no servidor local e com o usuário sa (system administrator). Obviamente, essa string é simples porque é apenas um tutorial, e o que você deverá implementar é o uso do User Id cadastrado e válido no banco de dados, assim como a senha do mesmo. Se houver outros parâmetros, como segurança integrada, é obrigatório declarar. O importante aqui é que você tenha a string de conexão completa.

Fazendo isso, saiba que a string de conexão ficará sempre fixa no web service, e em alguns casos, isso não é a melhor opção, pois essa mesma string de conexão poderia ser passada como parâmetro para o web service. Por enquanto vamos mantê-la aqui. Salve o arquivo Web.Config (Ctrl + S) e retorne ao código do web service. ...

Quer ler esse conteúdo completo? Tenha acesso completo