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