VB.NET - Deploy de uma aplicação Windows Forms usando SQL Server usando ClickOnce


Hoje vou mostrar como fazer o deploy/publish de uma aplicação Windows Forms que utiliza um banco de dados SQL Server anexado usando a tecnologia ClickOnce com a ferramenta Visual Studio Express 2012 for Windows Desktop.

Após o desenvolvimento de qualquer aplicação, a próxima tarefa é a distribuição do aplicativo e sua implantação nos usuários finais. O Visual Studio possui um módulo interno de Instalação e implantação para a criação de pacotes de instalação e também possui a tecnologia ClickOnce que facilita muito o deploy de aplicações mais simples.

Neste artigo primeiro eu vou criar uma aplicação muito simples que usa um banco de dados SQL Server Local que eu chamei de Teste.mdf e uma tabela chamada de Cliente. A aplicação vai exibir em um controle DataGridView no formulário do projeto os dados da tabela Cliente.

A seguir eu vou publicar a  aplicação gerando o arquivo Setup.exe usando a tecnologia ClickOnce e mostrando como distribuir o banco de dados SQL Server usado na aplicação.

O processo usado neste esta usando uma aplicação VB .NET mas o roteiro é o mesmo para  uma aplicação que usa o Visual C#.

Criando o projeto para distribuição da aplicação

Abra o Visual Studio Express 2012 for Windows Desktop  e no menu File clique em New Project;

Selecione o template Visual Basic -> Windows Forms Application , informe o nome Acesso_SQLServer e clique no botão OK;

No formulário form1.vb do projeto inclua um controle DataGridView alterando seu nome para dtgvClientes e dois botões de comando :

Agora vamos criar um banco de dados SQL Server anexado ao projeto.

No menu Project clique em Add New Item;

A seguir em Common Itens clique em Data e selecione o item Service-based DataBase informando o nome Teste.mdf;

Após clicar no botão Add o banco de dados Teste.mdf será criado e poderíamos interromper o processo neste ponto mas vou prosseguir e criar o DataSet apenas para ilustrar e para exibir a string de conexão usada;

Selecione DataSet e clique Next>;

Escolha a conexão com o banco de dados Teste.mdf e veja abaixo a string de conexão usada para acessar o banco de dados Teste.mdf;

Selecione a opção para salvar a string de conexão e clique no botão Next>;

Aceite o nome padrão para o DataSet e clique no botão Finish.

Após criar o dataset TesteDataSet podemos removê-lo do projeto pois não vamos usá-lo.

Vamos agora criar a tabela Cliente contendo os campos Id, nome e email.

Na janela DataBase Explorer clique com o botão direito do mouse sobre o objeto Tables e a seguir clique em Add New Table;

Na janela do descritor para criação de tabelas vamos definir os campos conforme mostra a figura abaixo;

Altere o nome da tabela para Cliente e na janela de propriedades defina o campo Id como do tipo Identity fazendo a propriedade (Is Identity) igual a True;

A seguir clique em Update;

Será cria da tabela Cliente que pode ser vista no DataBase Explorer;

Clique com o botão direito do mouse sobre a tabela Cliente e a seguir clique em Show Table Data;

Inclua alguns dados na tabela conforme abaixo:

Agora selecione o banco de dados Teste.mdf na janela Solution Explorer e na janela de propriedades defina a propriedade Build Action como Content e a propriedade Copy to OutPut Directoy como Copy if newer;

Pressione F5 para rodar a aplicação e clique no botão de comando Carregar para exibir os dados da tabela Cliente no DataGridView:

Publicando o projeto para distribuição da aplicação

Vamos agora fazer o deploy do projeto para distribuição da aplicação.

Clique com o botão direito do mouse sobre o nome do projeto e a seguir clique na opção Properties;

A janela de propriedades será aberta. Clique na aba Publish;

A seguir clique em Application Files...;

Verifique se o banco de dados Teste.mdf esta na lista exibida pela janela Application Files;

Verifique se a Publish Status esta definido como Data File(Auto) e se a coluna Download Group esta definida como Required.

 

Clique no botão OK;

 

A seguir clique no botão Publish Now;

 

Isso irá gerar o arquivo Setup.exe conforme mostra a figura abaixo:

Verifique a pasta Application Files e veja os arquivos para instalação presentes:

Basta copiar o conteúdo para um CD ou pen drive e realizar a instalação no cliente.

O processo acima somente funciona se o banco de dados SQL Server estiver anexado ao projeto para um projeto que use um banco de dados no servidor o processo é mais complexo.

Pegue o projeto completo aqui: Acesso_SQLServer.zip (sem o banco de dados Teste.mdf)

Luc 21:33 Passará o céu e a terra, mas as minhas palavras jamais passarão. (Jesus Cristo)

Joã 10:9 Eu sou a porta; se alguém por mim, salvar-se-á, e entrará, e sairá, e achará pastagens.

Heb 13:8 Jesus Cristo é o mesmo, ontem, e hoje, e eternamente.

Jesus Cristo não é religião é uma pessoa, verdadeiro homem e verdadeiro Deus; é o Salvador.

Referências:


José Carlos Macoratti