Экспорт (0) Печать
Развернуть все

Как подключиться к базе данных SQL Windows Azure с помощью платформы ADO.NET Entity Framework

Обновлено: Декабрь 2013 г.

Платформа ADO.NET Entity Framework позволяет разработчикам создавать приложения для доступа к данным, работающие с концептуальной моделью приложения, а не напрямую с реляционной схемой хранения.

В данном разделе описано создание простой концептуальной модели, сопоставленной с базой данных База данных SQL Microsoft Azure, и создание запроса к концептуальной модели. В следующем примере o Visual C#./Visual Basic создается строго типизированный запрос к объектам CLR, представляющим сущности и взаимосвязи в модели School, который возвращает названия подразделений в модели School.

Чтобы выполнить этот пример, необходимо установить Entity Framework из .NET Framework 3.5 с пакетом обновления 1 (SP1) или более поздних версий.

Создание модели данных

  1. В Visual Studio в меню Файл последовательно выберите пункты Создать и Проект.

  2. На панели Типы проектов выберите Windows. Выберите панель Консольное приложение в области Шаблоны. Введите SchoolApplicationEF в поле Имя и нажмите кнопку ОК.

  3. В обозревателе решений щелкните правой кнопкой мыши SchoolApplicationEF, последовательно выберите пункты Добавить и Новый элемент.

  4. Выберите Модель EDM ADO.NET, введите SchoolDataModel.edmx в поле Имя и нажмите кнопку Добавить.

  5. В мастере моделей EDM выберите Создать из базы данных и нажмите кнопку Далее.

  6. Нажмите кнопку Создать соединение, введите данные для базы данных School на сервере База данных SQL Azure и нажмите кнопку ОК. Выберите параметр Не включать конфиденциальные данные в строку подключения. Параметр будет задан в коде приложения. Затем нажмите кнопку Далее. Сведения о миграции базы данных School в База данных SQL Azure см. в разделе Практическое руководство. перенести базу данных с помощью мастера формирования скриптов (база данных SQL Azure).

  7. Выберите Таблицы и нажмите кнопку Готово. Будет создан EDMX-файл, определяющий тип сущности для каждой таблицы в базе данных.

  8. Сохраните файл SchoolDataModel.edmx.

    noteПримечание
    При выполнении этого примера в Visual Studio 2008 компонент Entity Framework не может создать EDMX-файл и связанные с ним клиентские классы на основе базы данных База данных SQL Azure. Для создания модели и файлов сопоставления необходимо подключиться к локальному экземпляру сервера SQL Server. Однако компонент Entity Framework сможет подключиться к База данных SQL Microsoft Azure, если модель и файлы сопоставления уже созданы. Кроме того, в Visual Studio 2008 отсутствует флажок Формировать имена объектов во множественном или единственном числе. Поэтому в следующем примере кода необходимо обновить Departments до Department и Courses до Course.

Создание консольного приложения

  1. Замените код в файле программы на приведенный ниже, затем нажмите клавишу F5, чтобы запустить приложение для базы данных База данных SQL Azure.

    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace SchoolApplicationEF
    {
    class Program
    {
        private static SchoolEntities schoolContext;
    
        static void Main(string[] args)
        {
            //Initialize the ObjectContext
            using (schoolContext = new SchoolEntities())
            {
    
                // Define a query that returns all Department  
                // objects and related Course objects, ordered by name.
                var departmentQuery = from d in schoolContext.Departments.Include("Courses")
                    orderby d.Name
                    select d;
    
                Console.WriteLine("List of departments: ");
    
                try
                {
                        foreach (Department dep in departmentQuery)
                            Console.WriteLine(dep.Name);
    
                }
                catch (Exception ex)
                {
                        Console.WriteLine("An error occurred: " + ex.Message);
                }
            }
    
            Console.WriteLine("Hit enter...");
            Console.Read();
     
        }
    }
    }
    

Миграция приложения в базу данных SQL

  1. Для миграции базы данных School в База данных SQL Azure воспользуйтесь инструкциями в разделе Практическое руководство. перенести базу данных с помощью мастера формирования скриптов (база данных SQL Azure).

  2. В проекте SchoolEFApplication откройте файл конфигурации App.Config. Измените строку подключения для подключения к базе данных База данных SQL Azure.

    <connectionStrings>
        <add name="SchoolEntities" connectionString="metadata=res://*/SchoolDataModel.csdl|res://*/SchoolDataModel.ssdl|res://*/SchoolDataModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=<provideServerName>.database.windows.net;Initial Catalog=School;Integrated Security=False;User ID=<provideUserID>;Password=<providePassword>;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=False&quot;" providerName="System.Data.EntityClient"/>
    </connectionStrings>
    
  3. Нажмите клавишу F5 для запуска приложения в базе данных База данных SQL Azure.

См. также

Добавления сообщества

ДОБАВИТЬ
Корпорация Майкрософт проводит интернет-опрос, чтобы выяснить ваше мнение о веб-сайте MSDN. Если вы желаете принять участие в этом интернет-опросе, он будет отображен при закрытии веб-сайта MSDN.

Вы хотите принять участие?
Показ:
© 2014 Microsoft