Implantando um aplicativo Web ASP.NET com SQL Server Compact usando o Visual Studio: Introdução – 1 de 12

por Tom Dykstra

Baixar o Projeto Inicial

Esta série de tutoriais mostra como implantar (publicar) um projeto de aplicativo Web ASP.NET que inclui um banco de dados SQL Server Compact usando o Visual Studio 2012 RC ou Visual Studio Express RC 2012 para Web. Você também pode usar o Visual Studio 2010 se instalar a Atualização de Publicação na Web.

Para obter um tutorial que mostra os recursos de implantação introduzidos após o lançamento do RC do Visual Studio 2012, mostra como implantar SQL Server edições diferentes de SQL Server Compact e mostra como implantar em Serviço de Aplicativo do Azure Aplicativos Web, consulte ASP.NET Implantação da Web usando o Visual Estúdio.

Esses tutoriais orientam você pela implantação primeiro no IIS no computador de desenvolvimento local para teste e, em seguida, em um provedor de hospedagem de terceiros. O aplicativo que você implantará usa um banco de dados de aplicativo e um banco de dados de associação ASP.NET. Você começa usando SQL Server Compact e implantando em SQL Server Compact e tutoriais posteriores mostram como implantar alterações de banco de dados e como migrar para SQL Server.

Os tutoriais pressupõem que você saiba como trabalhar com ASP.NET no Visual Studio. Se você não fizer isso, um bom lugar para começar é um Tutorial de ASP.NET Web Forms básico ou um tutorial básico ASP.NET MVC.

Se você tiver perguntas que não estão diretamente relacionadas ao tutorial, poderá postá-las no fórum ASP.NET Implantação.

Visão geral

Esses tutoriais orientam você pela implantação primeiro no IIS no computador de desenvolvimento local para teste e, em seguida, em um provedor de hospedagem de terceiros. O aplicativo que você implantará usa um banco de dados de aplicativo e um banco de dados de associação ASP.NET. Você começa usando SQL Server Compact e implantando em SQL Server Compact e tutoriais posteriores mostram como implantar alterações de banco de dados e como migrar para SQL Server.

O número de tutoriais – 11 no total, além de uma página de solução de problemas – pode fazer com que o processo de implantação pareça assustador. Na verdade, os procedimentos básicos para implantar um site compõem uma parte relativamente pequena do conjunto de tutoriais. No entanto, em situações do mundo real, muitas vezes você precisa de informações sobre algum aspecto extra pequeno, mas importante da implantação, por exemplo, definir permissões de pasta no servidor de destino. Incluímos muitas dessas técnicas adicionais nos tutoriais, com a esperança de que os tutoriais não deixem de fora informações que possam impedir que você implante um aplicativo real com êxito.

Os tutoriais são projetados para serem executados em sequência e cada parte é compilada na parte anterior. No entanto, você pode ignorar partes que não são relevantes para sua situação. (Ignorar partes pode exigir que você ajuste os procedimentos em tutoriais posteriores.)

Público-alvo

Os tutoriais são destinados a ASP.NET desenvolvedores que trabalham em pequenas organizações ou em outros ambientes em que:

  • Um processo de integração contínua (builds automatizados e implantação) não é usado.
  • O ambiente de produção é um provedor de hospedagem de terceiros.
  • Uma pessoa normalmente preenche várias funções (a mesma pessoa desenvolve, testa e implanta).

Em ambientes corporativos, é mais comum implementar processos de integração contínua e o ambiente de produção geralmente é hospedado pelos próprios servidores da empresa. Pessoas diferentes também normalmente executam funções diferentes. Para obter informações sobre a implantação corporativa, consulte Implantando aplicativos Web em cenários empresariais.

Organizações de todos os tamanhos também podem implantar aplicativos Web no Azure e a maioria dos procedimentos mostrados nesses tutoriais também se aplicam a Azure App Services Aplicativos Web. Para obter uma introdução ao Azure, consulte https://azure.microsoft.com.

O provedor de hospedagem mostrado nos tutoriais

Os tutoriais levam você pelo processo de configuração de uma conta com uma empresa de hospedagem e implantação do aplicativo nesse provedor de hospedagem. Uma empresa de hospedagem específica foi escolhida para que os tutoriais pudessem ilustrar a experiência completa de implantação em um site ao vivo. Cada empresa de hospedagem fornece recursos diferentes e a experiência de implantação em seus servidores varia um pouco; no entanto, o processo descrito neste tutorial é típico para o processo geral.

O provedor de hospedagem usado para este tutorial, Cytanium.com, é um dos muitos que estão disponíveis e seu uso neste tutorial não constitui um endosso ou recomendação.

Implantando projetos de site

A Contoso University é um projeto de aplicativo Web do Visual Studio. A maioria dos métodos e ferramentas de implantação demonstrados neste tutorial não se aplicam a Projetos de Site. Para obter informações sobre como implantar projetos de site, consulte ASP.NET Mapa de Conteúdo de Implantação.

Implantando projetos de MVC ASP.NET

Para este tutorial, você implanta um projeto de ASP.NET Web Forms, mas tudo o que você aprende a fazer também é aplicável a ASP.NET MVC. Um projeto do Visual Studio MVC é apenas outra forma de projeto de aplicativo Web. A única diferença é que, se você estiver implantando em um provedor de hospedagem que não dá suporte a ASP.NET MVC ou à sua versão de destino, verifique se instalou o pacote NuGet apropriado (MVC 3 ou MVC 4) em seu projeto.

Linguagem de programação

O aplicativo de exemplo usa C# mas os tutoriais não exigem conhecimento de C#e as técnicas de implantação mostradas pelos tutoriais não são específicas da linguagem.

Solução de problemas durante este Tutorial

Quando ocorre um erro durante a implantação ou se o site implantado não é executado corretamente, as mensagens de erro nem sempre fornecem uma solução. Para ajudá-lo com alguns cenários de problema comuns, uma página de referência de solução de problemas está disponível. Se você receber uma mensagem de erro ou algo não funcionar à medida que passar pelos tutoriais, certifique-se de marcar página de solução de problemas.

Comentários Bem-vindos

Os comentários sobre os tutoriais são bem-vindos e, quando o tutorial é atualizado, todos os esforços serão feitos para levar em conta correções ou sugestões de melhorias fornecidas nos comentários do tutorial.

Pré-requisitos

Antes de começar, verifique se você tem o Windows 7 ou posterior e um dos seguintes produtos instalados no computador:

Se você tiver o Visual Studio 2010 SP1 ou o Visual Web Developer Express 2010 SP1, instale os seguintes produtos também:

Alguns outros softwares são necessários para concluir o tutorial, mas você ainda não precisa ter isso carregado. O tutorial orientará você pelas etapas para instalá-lo quando precisar.

Baixando o aplicativo de exemplo

O aplicativo que você implantará se chama Contoso University e já foi criado para você. É uma versão simplificada de um site universitário, baseada vagamente no aplicativo da Universidade Contoso descrito nos tutoriais do Entity Framework no site ASP.NET.

Quando você tiver os pré-requisitos instalados, baixe o aplicativo Web da Contoso University. O arquivo.zip contém várias versões do projeto e um arquivo PDF que contém todos os 12 tutoriais. Para trabalhar nas etapas do tutorial, comece com ContosoUniversity-Begin. Para ver a aparência do projeto no final dos tutoriais, abra ContosoUniversity-End. Para ver a aparência do projeto antes da migração para a SQL Server completa no tutorial 10, abra ContosoUniversity-AfterTutorial09.

Para se preparar para trabalhar nas etapas do tutorial, salve ContosoUniversity-Begin em qualquer pasta usada para trabalhar com projetos do Visual Studio. Por padrão, esta é a seguinte pasta:

C:\Users\<username>\Documents\Visual Studio 2012\Projects

(Para as capturas de tela neste tutorial, a pasta do projeto está localizada no diretório raiz na Cunidade : .

Inicie o Visual Studio, abra o projeto e pressione CTRL-F5 para executá-lo.

Home_page

As páginas do site podem ser acessadas na barra de menus e permitem que você execute as seguintes funções:

  • Exibir estatísticas dos alunos (a página Sobre).
  • Exibir, editar, excluir e adicionar alunos.
  • Exibir e editar cursos.
  • Exibir e editar instrutores.
  • Exibir e editar departamentos.

A seguir estão as capturas de tela de algumas páginas representativas.

Students_Page

Add_Students_Page

Revisão dos recursos do aplicativo que afetam a implantação

Os recursos a seguir do aplicativo afetam como você o implanta ou o que você precisa fazer para implantá-lo. Cada uma delas é explicada com mais detalhes nos tutoriais a seguir na série.

  • A Contoso University usa um banco de dados SQL Server Compact para armazenar dados de aplicativos, como nomes de alunos e instrutores. O banco de dados contém uma combinação de dados de teste e dados de produção e, quando você implanta na produção, precisa excluir os dados de teste. Posteriormente, na série de tutoriais, você migrará de SQL Server Compact para SQL Server.
  • O aplicativo usa o sistema de associação ASP.NET, que armazena informações de conta de usuário em um banco de dados SQL Server Compact. O aplicativo define um usuário administrador que tem acesso a algumas informações restritas. Você precisa implantar o banco de dados de associação sem contas de teste, mas com uma conta de administrador.
  • Como o banco de dados do aplicativo e o banco de dados de associação usam SQL Server Compact como o mecanismo de banco de dados, você precisa implantar o mecanismo de banco de dados no provedor de hospedagem, bem como nos próprios bancos de dados.
  • O aplicativo usa ASP.NET provedores de associação universal para que o sistema de associação possa armazenar seus dados em um banco de dados SQL Server Compact. O assembly que contém os provedores de associação universal deve ser implantado com o aplicativo.
  • O aplicativo usa o Entity Framework 5.0 para acessar dados no banco de dados do aplicativo. O assembly que contém o Entity Framework 5.0 deve ser implantado com o aplicativo.
  • O aplicativo usa um utilitário de relatório e registro em log de erros de terceiros. Esse utilitário é fornecido em um assembly que deve ser implantado com o aplicativo.
  • O utilitário de log de erros grava informações de erro em arquivos XML em uma pasta de arquivo. Você precisa verificar se a conta em que ASP.NET é executada no site implantado tem permissão de gravação nessa pasta e precisa excluir essa pasta da implantação. (Caso contrário, os dados de log de erros do ambiente de teste podem ser implantados em arquivos de log de erros de produção e/ou de produção podem ser excluídos.)
  • O aplicativo inclui algumas configurações que devem ser alteradas no arquivo Web.config implantado, dependendo do ambiente de destino (teste ou produção) e outras configurações que devem ser alteradas dependendo da configuração de build (Depuração ou Versão).
  • A solução do Visual Studio inclui um projeto de biblioteca de classes. Somente o assembly gerado por esse projeto deve ser implantado, não o projeto em si.

Neste primeiro tutorial da série, você baixou o projeto do Visual Studio de exemplo e examinou os recursos do site que afetam a maneira como você implanta o aplicativo. Nos tutoriais a seguir, você se prepara para a implantação configurando algumas dessas coisas a serem tratadas automaticamente. Outros que você cuida manualmente.