VENDAS: 1-800-867-1389

Como conectar-se ao Banco de dados SQL do Windows Azure através do WCF Data Services

Atualizado: abril de 2014

O WCF Data Services (formerly known as ADO.NET Data Services) permite criar serviços de dados que implementam OData (Open Data Protocol), que é baseado em REST (transferência de estado representacional). Como OData é baseado em protocolos de internet padrão, os serviços de dados podem ser acessados por qualquer aplicativo cliente que possa enviar e receber mensagens de HTTP e analisar XML. Além disso, há muitas bibliotecas de cliente que facilitam o consumo de feeds de OData em várias plataformas de aplicativos. Para obter mais informações sobre as bibliotecas de cliente que dão suporte a OData, consulte SDK do OData.

O WCF Data Services exige uma implementação do provedor de serviços de dados para definir o modelo de dados e fornecer acesso à fonte de dados subjacente. Usando o Provedor Estrutura da entidade, é possível criar serviços de dados para um Banco de dados SQL do Azure. Para obter mais informações sobre como usar o WCF Data Services, consulte a documentação do WCF Data Services.

noteObservação
Ao abrir uma conexão para um Banco de dados SQL do Azure, defina o tempo limite de conexão como 30 segundos.

Este tópico mostra como criar um serviço de dados simples baseado em um Banco de dados SQL do Azure e um aplicativo do Azure que acessa o serviço de dados. Este tópico usa o banco de dados de exemplo School que é implantado no Banco de dados SQL do Azure em How To: Migrate a Database by Using Scripts.

Para seguir este exemplo, é necessário instalar o Azure SDK e o Azure Tools for Microsoft Visual Studio. Para obter mais informações sobre o Azure, consulte Azure SDK. Também é necessário inicializar o serviço Development Storage instalado com o Azure Tools usando o utilitário DSInit. O Development Storage deve ser inicializado somente uma vez. Para obter mais informações, consulte Sobre o Development Storage.

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

    WarningAviso
    É necessário executar o Visual Studio como administrador para usar o Azure Development Fabric.

  2. No painel Tipos de projeto, selecione Web. No painel Modelos, selecione Aplicativo Web ASP.NET. Digite SchoolApplication como Nome e clique em OK.

  3. No Gerenciador de Soluções, clique com o botão direito em SchoolApplication, aponte para Adicionar e selecione Novo Item.

  4. Selecione Modelo de Dados de Entidade ADO.NET, digite SchoolDataModel.edmx como Nome e clique em Adicionar.

  5. No Assistente de Modelo de Dados de Entidade, selecione Gerardo banco de dados e clique em Avançar.

  6. Clique em Nova Conexão, digite as informações para o banco de dados School em seu servidor do Banco de dados SQL do Azure e clique em OK. Escolha a opção Não, exclua os dados confidenciais da cadeia de conexão. Estas informações serão definidas em código de aplicativo. Em seguida, clique em Avançar.

  7. Selecione Tabelas e clique em Concluir. Isso cria um arquivo .edmx que define um tipo de entidade para cada tabela no banco de dados.

    CautionCuidado
    Para seguir esse exemplo no Visual Studio 2010 ou posterior, desmarque a caixa de seleção Pluralize ou singularize os nomes de objetos gerados. Durante a execução deste exemplo no Visual Studio 2008, o Estrutura da entidade não pode criar o arquivo .edmx e as classes de cliente de um Banco de dados SQL do Azure. Ele deve conectar-se a uma instância local do SQL Server para gerar o modelo e os arquivos de mapeamento. Entretanto, o Estrutura da entidade se conectará ao Banco de dados SQL do Microsoft Azure após a criação do modelo e dos arquivos de mapeamento.

  1. No Gerenciador deSoluções, clique com o botão direito em SchoolApplication, aponte para Adicionar e selecione NovoItem.

  2. Selecione WCF Data Service, digite SchoolDataService.svc como Nome e clique em Adicionar.

  3. Em SchoolDataService.svc.cs ou SchoolDataService.svc.vb, substitua o comentário /* TODO: put your data source class name here */ na definição da classe que define o serviço de dados com o tipo que é o contêiner de entidade do modelo de dados (neste caso SchoolEntities). A definição de classe deve se assemelhar ao seguinte:

  4. Substitua o código de espaço reservado na função InitializeService com o código a seguir, que concede acesso às entidades Course, Departmente Person:

  1. No Gerenciador de Soluções, clique com o botão direito na solução, aponte para Adicionar e clique em Novo Projeto.

  2. Na caixa de diálogo Adicionar Novo Projeto, no painel Tipos de projeto, selecione Serviço de Nuvem. Digite SchoolSite como Nome e clique em OK.

  3. Na caixa de diálogo Novo Projeto de Serviço de Nuvem, adicione uma Função Web ASP.NET ao painel Solução de Serviço de Nuvem e clique em OK.

  4. Substitua a origem em Default.aspx pelo seguinte código:

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1">
        <div>
        
            <asp:DropDownList ID="peopleList" runat="server" 
                onselectedindexchanged="peopleList_SelectedIndexChanged"
        AutoPostBack="True">
            </asp:DropDownList>
            <br />
            <br />
            <asp:Label ID="infoLabel" runat="server"></asp:Label>
            <br />
            
        
        </div>
        </form>
    </body>
    </html>
    

    Isso cria uma lista suspensa denominada peopleList e um controle Label denominado infoLabel.

  5. Pressione F6 para compilar o aplicativo.

  6. No Gerenciador de Soluções, clique com o botão direito no projeto Função Web e clique em Adicionar Referência de Serviço….

  7. Na caixa de diálogo Adicionar Referência de Serviço, clique em Descobrir. SchoolDataService.svc aparecerá no painel Serviços. Digite SchoolServiceReference como Nome e clique em OK. Isso adiciona o arquivo que contém as classes de dados que acessam recursos de serviços de dados.

  1. Em Default.aspx.cs ou Default.aspx.vb, adicione as seguintes instruções using (Imports no Visual Basic):

  2. Na classe parcial, adicione as seguintes declarações para DataServiceContext e URI ao serviço de dados (o URI exibida anteriormente no campo Endereço da caixa de diálogo Adicionar Referência de Serviço):

  3. No método Page_Load, crie uma instância no contexto do serviço de dados e carregue a lista suspensa com informações do serviço de dados adicionando o seguinte código:

  4. Na exibição do design de Default.aspx, clique duas vezes na lista suspensa e adicione o evento peopleList_SelectedIndexChanged.

  5. No evento peopleList_SelectedIndexChanged, popule o controle Label baseado na pessoa selecionada adicionando o seguinte código:

  1. Migre o banco de dados School para o Banco de dados SQL do Azure seguindo as instruções de How To: Migrate a Database by Using Scripts.

  2. No projeto SchoolApplication, abra o arquivo Web.config. Altere a cadeia de conexão de forma que ela se conecte ao seu Banco de dados SQL do Azure.

  3. No Gerenciador de Soluções, clique com o botão direito no projeto WebRole1 e selecione Definir como projeto de inicialização.

  4. Pressione F5 para executar o aplicativo.

Consulte também

Isso foi útil para você?
(1500 caracteres restantes)
Agradecemos os seus comentários
Mostrar:
© 2014 Microsoft