Exportar (0) Imprimir
Expandir Tudo

Tutorial: Conectar o aplicativo ASP.NET ao SQL Server no Azure via rede virtual

Atualizado: fevereiro de 2014

A criação de aplicativos que utilizam serviços de nuvem do Azure (plataforma como serviço) e máquinas virtuais do Azure (infraestrutura como serviço) é um conceito importante para a maioria das organizações. As máquinas virtuais do Azure permitem migrar cargas de trabalho e aplicativos existentes no servidor para o Azure, implantando e gerenciando máquinas virtuais. Com serviços de nuvem do Azure, você pode criar e executar aplicativos multicamadas no Azure, implantando serviços de nuvem (também conhecidos como serviços hospedados) que consistem em funções Web e funções de trabalho.

Este tutorial demonstra como conectar um aplicativo ASP.NET (um serviço de nuvem e uma função Web) a um SQL Server na máquina virtual do Azure via rede virtual do Azure. Quando você cria uma máquina virtual no Azure, o portal permite que você defina as configurações de rede virtual. Para serviços de nuvem, você precisa usar os arquivos de configuração do serviço para implantar o serviço de nuvem para uma rede virtual específica no Azure.

Neste tutorial, você aprenderá a:

  1. Para seguir este tutorial, instale Visual Studio no computador local.

  2. Além disso, instale o Azure SDK para o .NET Framework.

    • Para instalar o Azure SDK para o .NET, clique no Link de download do Azure. Escolha uma das versões que corresponde à versão do Visual Studio que você está usando:

      Azure SDK para Visual Studio 2013

      Azure SDK para Visual Studio 2012

    • Quando for solicitado a executar ou salvar o VWDOrVs2013AzurePack.2E2.2E2.exe ou o VWDOrVs11AzurePack.2E2.2E2.exe, clique em Executar.

    • Na janela Instalador da Plataforma Web, clique em Instalar e prossiga com a instalação.

  3. (Opcional) Se você deseja testar este tutorial no ambiente de desenvolvimento local, verifique também se instalou o SQL Server no computador local.

Neste tutorial, nossa meta é criar uma rede privada virtual dedicada na nuvem. Isso garante que o endereço IP interno (DIP-IP direcionado) das máquinas virtuais permaneça persistente e não seja alterado, mesmo quando você reinicializa uma máquina virtual. As etapas a seguir demonstram como criar uma nova rede virtual para a assinatura no portal de gerenciamento.

  1. No painel de navegação esquerdo, clique em REDES e em NOVO no painel inferior. Em seguida, clique em REDE VIRTUAL e em CRIAÇÃO PERSONALIZADA.

  2. Na janela Detalhes da Rede Virtual, digite TestVirtualNetwork na caixa Nome. Selecione Região. Escolha Criar um novo grupo de afinidade. Digite TestAffinityGroup no campo Nome do Grupo de Afinidade. Clique na próxima seta para continuar.

    A criação de um grupo de afinidade permite que o Azure mantenha todos os serviços que pertencem a esse grupo de afinidade o mais próximos possível no data center. Isso reduz a latência e aumenta o desempenho, o que pode reduzir os custos. Quando você cria uma rede virtual, pode utilizar um grupo de afinidade que criou anteriormente, ou pode criar um novo. Se você usar um grupo de afinidade existente com sua nova rede virtual, quaisquer serviços de nuvem anteriormente implantados nesse grupo de afinidade serão designados automaticamente para serem executados em um local o mais próximo possível de outros serviços de nuvem implantados em sua nova rede virtual.

  3. Na janela da caixa de diálogo Servidores DNS e Conectividade VPN, insira o nome do servidor DNS e o endereço IP que você quer usar como, por exemplo, TestDNSServer e 10.1.0.4. Não marque a caixa de seleção para conectividade ponto a site ou site a site. Neste tutorial, estamos criando uma rede virtual privada no Azure e ela não foi desenvolvida para conectividade entre plataformas.

  4. Na janela da caixa de diálogo Espaços de Endereço de Rede Virtual, você pode criar o espaço de endereço privado para sua nova rede virtual e sub-redes. O espaço de endereço deve ser um intervalo de endereços privado, especificado na notação CIDR 10.0.0.0/8, 172.16.0.0/12 ou 192.168.0.0/16 (conforme especificado pelo RFC 1918). Para Espaço de endereço, insira 10.4.0.0 como IP Inicial e /16 como CIDR. Note que tudo o que for implantado na rede virtual receberá um endereço IP desse espaço de endereço. Renomeie Subnet-1 como FrontEndSubnet com o IP Inicial10.4.2.0/24 e clique em Adicionar sub-rede. Clique na marca de seleção no canto inferior direito para criar sua rede virtual.

    É possível criar várias sub-redes no espaço de endereço de rede virtual. A criação de sub-redes permite ao usuário ter maior controle sobre os endereços atribuídos aos serviços de nuvem e sobre as máquinas virtuais implantadas na rede virtual. Ao criar aplicativos complexos para a plataforma Azure, é recomendável configurar várias sub-redes na mesma rede virtual, como uma sub-rede para as máquinas virtuais IIS (Serviços de Informações da Internet) e outra sub-rede para as máquinas virtuais do SQL Server.

    Note que os endereços IP de sub-rede não podem se sobrepor na rede virtual.

  5. Azure Não é possível alterar o Servidor DNS após a implantação da rede virtual. Portanto, é muito importante planejar cuidadosamente o serviço DNS. Para obter mais informações que possam ajudá-lo nesse planejamento, consulte Visão geral de resolução de nomes no Azure.

    Após a configuração da rede virtual, você poderá implantar máquinas virtuais ou serviços de nuvem. Para obter informações detalhadas sobre como configurar uma rede virtual, consulte o tópico Sobre a configuração de uma rede virtual no Portal de Gerenciamento na biblioteca do MSDN. Para obter informações adicionais sobre a rede do Azure e seus cenários de uso, consulte Rede virtual do Azure e Visão geral de máquinas virtuais do Azure na biblioteca do MSDN.

No Azure, seus bancos de dados parecem estar armazenados no disco local da máquina virtual na qual a instância do SQL Server é executada. Em segundo plano, cada um desses discos é gravado em um Blob do Azure. O Azure usa a conta de armazenamento como um contêiner para os discos. As etapas a seguir demonstram como criar uma nova conta de armazenamento no portal de gerenciamento.

  1. Depois de criar sua rede virtual no portal de gerenciamento do Azure, à esquerda, clique em ARMAZENAMENTO e, no canto superior esquerdo da tela, clique em +NOVO.

  2. Clique em Serviços de Dados, em Armazenamento e em Criação Rápida.

  3. Digite teststorageaccount4u na caixa URL e escolha o grupo de afinidade recém-criado. Em Replicação, você pode selecionar o nível de replicação que você deseja para sua conta de armazenamento. Neste tutorial, selecione Localmente Redundante. Em seguida, clique na caixa de seleção CRIAR CONTA DE ARMAZENAMENTO.

Para obter mais informações sobre contas de armazenamento do Azure, consulte O que é uma conta de armazenamento.

A meta deste tutorial é demonstrar como conectar um aplicativo ASP.NET (uma função Web) a um SQL Server na máquina virtual do Azure via rede virtual do Azure. Esta seção demonstra como criar e configurar uma máquina virtual do SQL Server no grupo de afinidade especificado e na rede virtual.

  1. No portal de gerenciamento do Azure, na parte inferior esquerda da página da Web, clique em +NOVO, em COMPUTAÇÃO, em MÁQUINA VIRTUAL e em DA GALERIA.

  2. Selecione uma imagem de máquina virtual contendo o SQL Server e, depois, clique na próxima seta na parte inferior direita da página.

  3. Na página Configuração da máquina virtual, forneça as seguintes informações:

    • Se várias versões da imagem estiverem disponíveis, em Data de Liberação da Versão, escolha a versão que você deseja usar.

    • Digite SQLVM como um NOME DA MÁQUINA VIRTUAL. Observe que, no portal do Azure, quando você clica em um nome de máquina virtual para abrir o painel, aparece o nome da máquina virtual como um nome de host.

    • Selecione o TAMANHO apropriado na lista suspensa.

    • Na caixa NOVO NOME DE USUÁRIO, digite o nome de usuário exclusivo como o administrador local.

    • Na caixa NOVA SENHA, digite uma senha segura.

    • Na caixa CONFIRMAR SENHA, digite novamente a senha.

  4. Na página Configuração da máquina virtual, forneça as seguintes informações:

    • Selecione Máquina Virtual Autônoma.

    • Na caixa NOME DNS DO SERVIÇO DE NUVEM, forneça a primeira parte de um nome DNS de sua escolha, de forma que ele constitua um nome no formato SQLVM2013.cloudapp.net.

    • Na caixa REGIÃO/GRUPO DE AFINIDADE/REDE VIRTUAL, selecione uma rede virtual onde esta imagem virtual será hospedada. Neste tutorial, selecione TestVirtualNetwork que você criou anteriormente.

    • Na caixa CONTA DE ARMAZENAMENTO, escolha a conta de armazenamento teststorageaccount4u criada anteriormente.

    • Se você selecionou a rede virtual TestVirtualNetwork na etapa anterior, a primeira sub-rede associada a essa rede virtual aparecerá na caixa SUB-REDES DA REDE VIRTUAL por padrão. Se você não criou uma sub-rede para a rede virtual, a caixa SUB-REDES DA REDE VIRTUAL não aparecerá na tela. Caso contrário, selecione a sub-rede TestSubnet criada anteriormente.

    • Na caixa CONJUNTO DE DISPONIBILIDADE, selecione (Nenhum).

    • Clique na próxima seta para continuar.

    • Em seguida, analise os novos pontos de extremidade que serão criados para permitir conexões para a máquina virtual, por exemplo, por meio da Área de Trabalho Remota ou um cliente do Secure Shell (SSH). Você também pode adicionar pontos de extremidade agora ou criá-los posteriormente. Se quiser criar pontos de extremidade posteriormente, consulte Como configurar a comunicação com uma máquina virtual.

    • Leia e aceite os termos legais.

    • Clique na marca de seleção no canto inferior direito para continuar.

  5. O Azure cria a máquina virtual e define as configurações do sistema operacional. Observe que o processo de provisionamento pode levar alguns minutos. Após o Azure concluir o provisionamento da máquina virtual, ela é listada como Executando no portal de gerenciamento do Azure. Se ela estiver listada como Parada, clique em Iniciar. Quando você cria uma máquina virtual, um serviço de nuvem é criado para você. O serviço de nuvem que é criado para conter a primeira máquina virtual não é exibido no portal de gerenciamento até você conectar máquinas virtuais adicionais ao primeiro computador. O Azure define o nome desse novo serviço de nuvem usando o nome DNS digitado na página Modo da máquina virtual.

  6. No portal de gerenciamento do Azure, clique no nome da máquina virtual SQLVM recém-criado para abrir o painel.

  7. Anote o Endereço IP Interno da máquina virtual. Você o usará posteriormente na cadeia de conexão.

  8. No menu inferior, clique em Conectar e faça logon na máquina virtual usando a área de trabalho remota (RDP). Use as credenciais de administrador para fazer logon.

  9. A primeira vez que você faz logon nessa máquina virtual, talvez seja necessário concluir vários processos, inclusive a configuração da área de trabalho, atualizações do Windows e a conclusão de tarefas de configuração inicial (sysprep) do Windows. Após a conclusão do sysprep do Windows, a configuração do SQL Server conclui tarefas de configuração. Quando você está conectado a uma máquina virtual com a área de trabalho remota do Windows, a máquina virtual funciona como qualquer outro computador. Você pode se conectar à instância padrão do SQL Server com o SQL Server Management Studio (executado na máquina virtual) da forma usual.

  10. Em seguida, você precisa configurar o SQL Server para escutar no protocolo TCP. Para fazer isso, clique em Iniciar | Todos os Programas | Microsoft SQL Server | Ferramentas de Configuração e abra o SQL Server Configuration Manager. Observe que a versão do SQL Server escolhida em Iniciar | Todos os Programas | Microsoft SQL Server deve corresponder à versão escolhida quando você criou a máquina virtual.

  11. No SQL Server Configuration Manager, expanda Configuração de Rede do SQL Server no painel de console.

  12. Clique em Protocolos para obter o nome da instância. (A instância padrão é Protocolos para MSSQLSERVER).

  13. No painel de detalhes, clique com o botão direito do mouse em TCP; por padrão, ele deve ser Habilitado para as imagens da galeria. Para as imagens personalizadas, clique em Habilitar (se seu status for Desabilitado).

  14. No painel de console, clique em Serviços do SQL Server.

  15. No painel de detalhes, clique com o botão direito do mouse em SQL Server (nome da instância) (a instância padrão é SQL Server (MSSQLSERVER)) e, depois, clique em Reiniciar, para parar e reiniciar a instância do SQL Server.

  16. Em seguida, abra as portas TCP no firewall do Windows para a instância padrão do Mecanismo de Banco de Dados. Para fazer isso, clique em Iniciar | Todos os Programas | Ferramentas Administrativas, e abra Firewall do Windows com Segurança Avançada.

  17. No painel esquerdo do Firewall do Windows com Segurança Avançada, clique com o botão direito do mouse em Regras de Entrada e clique em Nova Regra no painel de ação.

  18. Na caixa de diálogo Tipo de Regra, selecione Porta e clique em Avançar.

  19. Na caixa de diálogo Protocolo e Portas, selecione TCP. Selecione Portas locais específicas e digite o número da porta da instância do Mecanismo de Banco de Dados (1433 para a instância padrão). Clique em Avançar.

  20. Na caixa de diálogo Ação, selecione Permitir a conexão e clique em Avançar.

  21. Na caixa de diálogo Perfil, selecione Domínio, Privado, Público e, em seguida, clique em Avançar.

  22. Na página Nome, defina o nome da regra de entrada como SQLServerVM1Port e clique em Concluir. Feche a janela Firewall do Windows com Segurança Avançada.

  23. Depois, configure o SQL Server para a autenticação no modo misto. O Mecanismo de Banco de Dados do SQL Server não pode usar a Autenticação do Windows sem um ambiente de domínio. Para fazer isso, clique em Todos os Programas | Microsoft SQL Server (versão). Depois, clique em SQL Server Management Studio.

  24. Na caixa de diálogo Conectar ao Servidor, para Nome do servidor, digite o nome de host da máquina virtual para conectar-se ao mecanismo de banco de dados com o Pesquisador de Objetos. Selecione Autenticação do Windows. Clique em Conectar.

  25. No Pesquisador de Objetos do SQL Server Management Studio, clique com o botão direito do mouse no nome da instância do SQL Server (o nome da máquina virtual) e, depois, clique em Propriedades.

  26. Na página Segurança, em Autenticação de servidor, selecione o Modo de Autenticação do SQL Server e do Windows e clique em OK.

  27. No Pesquisador de Objetos, clique com o botão direito do mouse no servidor e, depois, clique em Reiniciar.

  28. Em seguida, você precisa criar um logon de autenticação do SQL Server para conectar-se à primeira máquina virtual de outro computador. Para fazer isso, em Pesquisador de Objetos do SQL Server Management Studio, expanda a instância de servidor SQLVM no qual você deseja criar o novo logon. Clique com o botão direito do mouse na pasta Segurança, aponte para Novo e selecione Logon...

  29. Na caixa de diálogo Logon – Novo, na página Geral, insira o nome do novo usuário sqlvmlogin na caixa Nome de logon. Selecione Autenticação do SQL Server. Na caixa Senha, digite uma senha para o novo usuário. Digite essa senha novamente na caixa Confirmar Senha. Deixe valores padrão em outras caixas.

  30. Na página Funções de Servidor, clique em sysadmin, se quiser designar esse logon como um administrador do SQL Server. Clique em OK. Por padrão, o Azure seleciona a Autenticação do Windows durante a instalação da máquina virtual do SQL Server. Assim, o logon de sa é desabilitado e uma senha é atribuída pela instalação. Para usar o logon sa, habilite-o e também atribua uma nova senha. Para obter mais informações, consulte Alterar o modo de autenticação do servidor.

  31. No Pesquisador de Objetos do SQL Server Management Studio, clique com o botão direito do mouse no nome da instância do SQL Server (o nome da máquina virtual) e, depois, clique em Desconectar.

Em seguida, crie um banco de dados de exemplo que será usado pelo aplicativo ASP.NET.

  1. No Pesquisador de Objetos do SQL Server Management Studio, clique em Conectar e, depois, em Mecanismo de Banco de Dados…

  2. Na caixa de diálogo Conectar ao Servidor, para Nome do servidor, digite o nome de host da máquina virtual SQLVM para conectar-se ao mecanismo de banco de dados. Selecione Autenticação do SQL Server. Digite sqlvmlogin como um nome de logon e digite a senha que você especificou antes. Clique em Conectar.

  3. No Pesquisador de Objetos do SQL Server Management Studio, clique com o botão direito do mouse no nome da instância do SQL Server (o nome da máquina virtual) e, depois, clique com o botão direito do mouse em Nova Consulta.

  4. Execute a instrução a seguir para criar um banco de dados de exemplo.

    CREATE DATABASE TestDb;
    GO
    
  5. Em Bancos de Dados, selecione o novo banco de dados, TestDB. Clique com o botão direito do mouse no banco de dados TestDB e abra a janela Nova Consulta. Execute as instruções a seguir para criar duas linhas no banco de dados TestDB.

    CREATE TABLE Table1 (Col1 int primary key, Col2 varchar(20));
    GO
    INSERT INTO Table1 (Col1, Col2) VALUES (1, 'string1'), (2, 'string2');
    GO
    
    WarningAviso
    Por padrão, o Azure mantém todo o sistema operacional e software do SQL Server na unidade do sistema operacional (C:\). Para melhorar o desempenho, é recomendável anexar discos de dados à máquina virtual para manter todos os arquivos de dados e de log. Além disso, é recomendável não armazenar dados na unidade de armazenamento temporário (D:\) pois ela não é persistente. Para obter mais informações sobre como anexar discos no Azure, consulte Como anexar um disco de dados a uma máquina virtual. Para obter mais informações sobre como alterar os locais padrão de novos arquivos de dados e de log no SQL Server usando o SQL Server Management Studio, consulte Exibir ou alterar os locais padrão de arquivos de dados e de log.

Nesta seção, você aprenderá a criar um aplicativo simples ASP.NET em seu computador local e a configurá-lo para se conectar a uma instância de banco de dados do SQL Server em uma máquina virtual do Azure. Este exemplo usa o controle GridView para habilitá-lo a inserir, atualizar e excluir dados de um banco de dados sem gravar códigos.

  1. No Visual Studio, no menu Arquivo, clique em Novo e selecione Projeto.

  2. Na caixa de diálogo Novo Projeto, na lista Modelos Instalados, selecione Serviço de Nuvem do Azure para Visual C# ou Visual Basic.

  3. Digite DataBinding como nome e clique em OK.

  4. Na caixa de diálogo Novo Serviço em Nuvem do Azure, selecione Função Web ASP.NET na lista Funções do NET Framework e clique na seta para adicioná-la à lista Solução do Serviço em Nuvem do Azure. Clique em OK. Com o Visual Studio 2013, selecione Web Forms no Novo projeto ASP.NET para o WebRole. Depois, clique em OK.

  5. Em Default.aspx, clique em Design para alternar para a exibição do design.

  6. Arraste o controle GridView da Caixa de Ferramentas - Dados para a superfície de design.

  7. Na janela Propriedades da GridView, defina AutoGenerateDeleteButton e AutoGenerateEditButton como true.

  1. No Gerenciador de Soluções, no projeto Função Web, clique duas vezes em Web.config.

  2. Em Web.config, substitua a marca existente connectionStrings desta forma e modifique conforme o necessário:

    <connectionStrings>
        <add name="SQLServerinWAConnection" 
        connectionString="Data Source=tcp:SQLVMInternalIPAddress;Initial Catalog=TestDb;User ID=sqlvmlogin;Password=yourpassword;Encrypt=true;Trusted_Connection=false;TrustServerCertificate=true"
        providerName="System.Data.SqlClient" />
    </connectionStrings>
    
    Quando TrustServerCertificate é definido como true, você solicita que a camada de transporte use o SSL para criptografar o canal, deixando de passar pela cadeia de certificado para validar a confiança. Para obter mais informações, consulte Conexões Criptografadas com SQL Server.

    WarningAviso
    Atualize tcp:SQLVMInternalIPAdress com o endereço IP interno da nova máquina virtual, como tcp:10.4.2.4. Além disso, atualize a senha com a senha especificada antes para o logon sqlvmlogin.

    Ao implantar o Azure Project em uma rede virtual, você não precisa tratar a resolução de nome entre instâncias. Ou seja, se você implantar uma função Web que se conectará a um SQL Server executado em uma máquina virtual na mesma rede virtual, especifique o endereço IP do servidor SQL no arquivo web.config. Por isso, é recomendável criar a máquina virtual do SQL Server primeiro para que você possa obter o endereço IP interno da máquina virtual para o aplicativo Web.

  3. Para obter o endereço IP da máquina virtual, faça logon no portal de gerenciamento. Clique em Máquinas Virtuais. Clique na nova máquina virtual, SQLVM, para abrir o painel. Copie o endereço IP interno no arquivo web.config, conforme mostrado acima.

  4. Em Default.aspx, clique em Origem para alternar para a exibição de origem.

  5. Adicione a seguinte marcação para criar um controle SqlDataSource para sua conexão na marca BodyContent no arquivo de origem Default.aspx:

    <asp:SqlDataSource ID="SQLServerDataSource" runat="server" 
       ConnectionString="<%$ ConnectionStrings: SQLServerinWAConnection %>" 
       InsertCommand="INSERT INTO [Table1] ([Col1], [Col2]) VALUES (@Col1, @Col2)" 
       SelectCommand="SELECT * FROM [Table1]" 
       UpdateCommand="UPDATE [Table1] SET [Col2] = @Col2 WHERE [Col1] = @Col1"
       DeleteCommand="DELETE FROM [Table1] WHERE [Col1] = @Col1">
       <UpdateParameters>
          <asp:Parameter Name="Col2" Type="String" />
          <asp:Parameter Name="Col1" Type="Int32" />
       </UpdateParameters>
       <InsertParameters>
          <asp:formParameter Name="Col1" FormField="TextBox1" />
          <asp:formParameter Name="Col2" FormField="TextBox2" />
       </InsertParameters>
       <DeleteParameters>
          <asp:Parameter Name="Col1" Type="Int32" />
       </DeleteParameters>
    </asp:SqlDataSource>
    
    Isso inclui a lógica SELECT, INSERT, UPDATE e DELETE para o controle.

  6. No Default.aspx, alterne para o modo Design. Clique no controle GridView recém-adicionado. Na janela Propriedades do controle GridView, adicione os atributos a seguir à marcação de seu controle GridView: DataSourceID="SQLServerDataSource" e DataKeyNames="Col1".

  7. Os desenvolvedores podem criar livremente páginas do ASP.NET com base nos requisitos do aplicativo. Para este tutorial, ao usar o Visual Studio 2013, você pode modificar a origem Default.aspx da seguinte maneira:

    <%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebRole1._Default" %>
    
    <asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
    
        <div class="jumbotron">
            <h1>ASP.NET</h1>
            <p class="lead">ASP.NET is a free web framework for building great Web sites and Web applications using HTML, CSS, and JavaScript.</p>
            <p><a href="http://www.asp.net" class="btn btn-primary btn-large">Learn more &raquo;</a></p>
        </div>
    
        <div class="row">
            <div class="col-md-4">
                <h2>Getting started                
                </h2>
                <p>
                    ASP.NET Web Forms lets you build dynamic websites using a familiar drag-and-drop, event-driven model.
                A design surface and hundreds of controls and components let you rapidly build sophisticated, powerful UI-driven sites with data access.
                </p>
                <asp:GridView ID="GridView2" runat="server" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" DataKeyNames="Col1" DataSourceID="SQLServerDataSource">
                    </asp:GridView>
                
                <asp:SqlDataSource ID="SQLServerDataSource" runat="server" 
                    ConnectionString="<%$ ConnectionStrings: SQLServerinWAConnection %>" 
                    InsertCommand="INSERT INTO [Table1] ([Col1], [Col2]) VALUES (@Col1, @Col2)" 
                    SelectCommand="SELECT * FROM [Table1]" 
                    UpdateCommand="UPDATE [Table1] SET [Col2] = @Col2 WHERE [Col1] = @Col1"
                    DeleteCommand="DELETE FROM [Table1] WHERE [Col1] = @Col1">
                <UpdateParameters>
                    <asp:Parameter Name="Col2" Type="String" />
                    <asp:Parameter Name="Col1" Type="Int32" />
                </UpdateParameters>
                <InsertParameters>
                    <asp:formParameter Name="Col1" FormField="TextBox1" />
                    <asp:formParameter Name="Col2" FormField="TextBox2" />
                </InsertParameters>
                <DeleteParameters>
                    <asp:Parameter Name="Col1" Type="Int32" />
                </DeleteParameters>
    </asp:SqlDataSource>
            </div>
                 
        </div>
        </asp:Content>
    
    
    
  8. Adicionar a seguinte marca ao arquivo Web.config logo após a marca <compilation> na marca <system.web>:

    <customErrors mode="Off"/>
    
    Isso garantirá que o rastreamento de pilha de qualquer mensagem de erro seja exibido durante a execução desse aplicativo.

  9. (Etapa opcional) Se você quiser testar seu aplicativo no ambiente de desenvolvimento local, execute o Visual Studio como um administrador. Depois, verifique se a cadeia de conexão aponta para a instância do banco de dados do SQL Server local. Para testes locais, crie o banco de dados de exemplo e a tabela no servidor local. Depois, substitua a marca <connectionStrings> no Web.config, conforme mostrado a seguir.

    <connectionStrings>
        <add name="SQLServerinWAConnection" connectionString="Data Source=tcp:SQLVMInternalIPAddress;Initial Catalog=TestDb;User ID=sqlvmlogin;Password=yourpassword;Encrypt=true;Trusted_Connection=false;TrustServerCertificate=true"
        providerName="System.Data.SqlClient" />
        <add name="SQLServerLocalConnection" connectionString="Data Source=localhost;Initial Catalog=TestDb;Trusted_Connection=true"
        providerName="System.Data.SqlClient" />
    </connectionStrings>
    
    Além disso, atualize o atributo ConnectingString no arquivo de origem Default.aspx para apontar para o servidor local, desta forma:

    ConnectionString="<%$ ConnectionStrings:SQLServerLocalConnection %>"
    
    Em seguida, pressione F5 para executar a solução.

É possível implantar uma máquina virtual em uma rede virtual do Azure no Portal de Gerenciamento. Mas, no momento, não é possível especificar configurações de rede virtual para o projeto de serviço de nuvem do Azure através do portal. Você precisa atualizar os parâmetros de configuração de rede no arquivo .cscfg do pacote de implantação do Azure. Na solução, há dois arquivos de configuração do serviço:

  • ServiceConfiguration.Cloud.csfg : use este arquivo de configuração para definir o aplicativo para implantação em nuvem do Azure.

  • ServiceConfiguration.Local.csfg : use este arquivo para a configuração local, que pode ser usada para depurar o aplicativo no emulador de computação.

  1. Para habilitar a comunicação entre a função Web e a máquina virtual do SQL Server, você precisa configurar a função Web para conectar-se à mesma rede virtual que a máquina virtual do SQL Server. Para fazer isso, atualize o arquivo ServiceConfiguration.Cloud.cscfg. Expanda o projeto DataBinding no Gerenciador de Soluções. Os arquivos de configuração do serviço devem aparecer logo após Funções no Visual Studio. Abra o arquivo ServiceConfiguration.Cloud.cscfg e adicione o seguinte elemento NetworkConfiguration logo após a última marca Role.

    <NetworkConfiguration>
          <VirtualNetworkSite name="TestVirtualNetwork" />
          <AddressAssignments>
              <InstanceAddress roleName="WebRole1">
                 <Subnets>
                    <Subnet name="FrontEndSubnet" />
               </Subnets>
            </InstanceAddress>
       </AddressAssignments>
     </NetworkConfiguration>
    
    Note que, se você não especificar valores nas seções de elementos da rede virtual do arquivo de configuração de serviço, o serviço de nuvem não será implantado em uma rede virtual. Para obter mais informações, consulte Esquema de NetworkConfiguration. Se você implantar seu próprio servidor DNS na plataforma Azure, precisará especificar também o servidor DNS para instâncias da função Web/de trabalho no arquivo .csfg.

    WarningAviso
    Certifique-se de que Nome de VirtualNetworkSite e Nome da sub-rede coincidam com os nomes usados anteriormente quando você criou a rede virtual.

  2. Depois de definir as configurações no arquivo de configuração, abra a janela da caixa de diálogo Propriedade da Função para selecionar a configuração a ser usada. Para fazer isso, clique com o botão direito do mouse em WebRole1 no Gerenciador de Soluções. Abra a janela Propriedades da WebRole1. Selecione Configuração. Na caixa Configuração do Serviço, escolha Nuvem.

  3. Pressione F6 para criar a solução.

    WarningAviso
    Quando há máquinas virtuais e funções Web/de trabalho do Azure na mesma rede virtual do Azure, isso proporciona baixa latência e conectividade mais segura.

Nesta seção, você publicará um aplicativo Web no Azure criando um pacote através do Visual Studio. Em seguida, você usará esse pacote para criar um serviço de nuvem na mesma rede virtual usada antes para criar uma máquina virtual do SQL Server.

  1. Para publicar o aplicativo Web no Azure, no Gerenciador de Soluções do Visual Studio, clique com o botão direito do mouse no projeto DataBinding e selecione Pacote.

  2. Na caixa de diálogo Empacotar Aplicativo do Azure, verifique se a opção Configuração do Serviço está definida como Nuvem e se a opção Criar Configuração está definida como Versão. Em seguida, clique no botão Pacote.

    WarningAviso
    Se ocorrer um erro indicando que o Visual Studio não pode substituir a pasta <pasta do projeto>\bin\Release\app.publish existente, exclua manualmente os arquivos de pacotes existentes. Em seguida, repita as duas etapas anteriores para criar um novo pacote.

  3. Faça logon no portal de gerenciamento.

  4. Clique em +NOVO na parte inferior da página. Selecione COMPUTAÇÃO, Serviço de Nuvem e Criação Personalizada.

  5. Na janela Criar um serviço de nuvem, insira DataBinding na caixa de texto URL, selecione TestAffinityGroup na lista de seleção Região/Grupo de Afinidade e marque a opção Implantar um pacote do serviço de nuvem agora. Clique na próxima seta para continuar.

  6. Na janela Publicar o serviço de nuvem, digite um nome para a nova implantação (por exemplo, DataBinding). Navegue até o local do pacote e dos arquivos de configuração (por exemplo <pasta do projeto>\bin\Release\app.publish) e marque a opção Implantar mesmo se uma ou mais funções contiverem uma única instância.

  7. Você poderá usar a caixa de seleção Adicionar certificados agora quando desejar proteger o aplicativo usando uma criptografia SSL. Para obter mais informações, consulte Configurando o SSL para um aplicativo no Azure.

  8. Depois, clique no botão de marca de seleção para concluir. Note que a criação de um serviço de nuvem pode levar alguns minutos.

  9. Para ver todos os recursos na rede virtual, clique em REDES no painel esquerdo. Em seguida, clique em TestVirtualNetwork para abrir o painel.

  10. Para executar o aplicativo, clique em Serviços de Nuvem no painel esquerdo. Em seguida, clique no serviço de nuvem DataBinding para abrir o painel. Clique em URL do Site para executar o aplicativo.

  11. Se você usar o Visual Studio 2013 para criar este aplicativo ASP.NET, a tela a seguir deverá aparecer quando o aplicativo for executado.

WarningAviso
Este tutorial não mostra como proteger o serviço de nuvem usando a criptografia SSL ou os certificados em nível de serviço. É recomendável proteger sempre seu aplicativo e as cadeias de conexão no aplicativo.

Para oferecer interações seguras para usuários do serviço de nuvem, use os certificados do serviço. Se você deseja publicar o serviço de nuvem diretamente do Visual Studio no Azure, use os certificados de gerenciamento. Para obter mais informações sobre certificados, consulte Gerenciando certificados no Azure. Para obter mais informações sobre como configurar um certificado de serviço, consulte Configurando o SSL para um aplicativo do Azure e Como configurar um certificado SSL em um ponto de extremidade HTTPS.

É recomendável também implantar o aplicativo empacotado no ambiente de preparo no Azure a ser testado antes de movê-lo para o ambiente de produção no qual o aplicativo está acessível na Internet. Para obter mais informações, consulte Preparando um aplicativo no Azure.

Consulte também

Mostrar:
© 2014 Microsoft