Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
При создании модели с помощью конструктора Entity Framework классы и производный контекст автоматически создаются для вас. Помимо создания кода по умолчанию мы также предоставляем ряд шаблонов, которые можно использовать для настройки создаваемого кода. Эти шаблоны предоставляются как текстовые шаблоны T4, что позволяет настраивать шаблоны при необходимости.
Код, создаваемый по умолчанию, зависит от версии Visual Studio, в которой создается модель:
- Модели, созданные в Visual Studio 2012 и 2013, создают простые классы сущностей POCO и контекст, производный от упрощенного DbContext.
- Модели, созданные в Visual Studio 2010, создают классы сущностей, производные от EntityObject, и контекст, производный от ObjectContext.
Замечание
Рекомендуется переключиться на шаблон Генератора DbContext после добавления модели.
На этой странице рассматриваются доступные шаблоны, а затем приведены инструкции по добавлению шаблона в модель.
Доступные шаблоны
Следующие шаблоны предоставляются командой Entity Framework:
Генератор DbContext
Этот шаблон создает простые классы сущностей POCO и контекст, производный от DbContext с помощью EF6. Это рекомендуемый шаблон, если у вас нет причины использовать один из других шаблонов, перечисленных ниже. Это также шаблон создания кода, который вы получаете по умолчанию, если вы используете последние версии Visual Studio (Visual Studio 2013 на более поздних версиях): при создании новой модели этот шаблон используется по умолчанию, а файлы T4 (tt) вложены в edmx-файл.
Более старые версии Visual Studio
- Visual Studio 2012: Чтобы получить шаблоны DBContextGenerator EF 6.x , необходимо установить последние средства Entity Framework для Visual Studio . Дополнительные сведения см. на странице Get Entity Framework .
- Visual Studio 2010: Шаблоны DBContextGenerator EF 6.x недоступны для Visual Studio 2010.
Генератор DbContext для EF 5.x
Если вы используете более раннюю версию пакета NuGet EntityFramework (один с основной версией 5), вам потребуется использовать шаблон генератора EF 5.x DbContext .
Если вы используете Visual Studio 2013 или 2012, этот шаблон уже установлен.
Если вы используете Visual Studio 2010, необходимо выбрать вкладку Online при добавлении шаблона, чтобы скачать его из коллекции Visual Studio. Кроме того, вы можете установить шаблон непосредственно из коллекции Visual Studio заранее. Так как шаблоны включены в более поздние версии Visual Studio, версии коллекции можно установить только в Visual Studio 2010.
- Генератор DbContext для EF 5.x на C#
- Генератор DBContext ef 5.x для веб-сайтов C#
- Генератор DBContext EF 5.x для VB.NET
- Генератор DBContext EF 5.x для веб-сайтов VB.NET
Генератор DbContext для EF 4.x
Если вы используете более раннюю версию пакета NuGet EntityFramework (один с основной версией 4), вам потребуется использовать шаблон генератора DBContext EF 4.x . Это можно найти на вкладке Online при добавлении шаблона или установить шаблон непосредственно из коллекции Visual Studio заранее.
- Генератор DbContext для EF 4.x и C#
- Генератор DBContext ef 4.x для веб-сайтов C#
- Генератор DbContext для EF 4.x в VB.NET
- Генератор DbContext EF 4.x для веб-сайтов VB.NET
Генератор EntityObject
Этот шаблон создаст классы сущностей, производные от EntityObject и контекст, производный от ObjectContext.
Замечание
Рассмотрите возможность использования генератора DbContext
Генератор DbContext теперь является рекомендуемым шаблоном для новых приложений. Генератор DbContext использует более простой API DbContext. Генератор EntityObject по-прежнему доступен для поддержки существующих приложений.
Visual Studio 2010, 2012 и 2013
При добавлении шаблона необходимо выбрать вкладку Online , чтобы скачать ее из коллекции Visual Studio. Кроме того, вы можете установить шаблон непосредственно из коллекции Visual Studio заранее.
- Генератор EntityObject EF 6.x для C#
- Генератор EntityObject EF 6.x для веб-сайтов C#
- Генератор EntityObject EF 6.x для VB.NET
- Генератор EntityObject EF 6.x для веб-сайтов VB.NET
Генератор EntityObject для EF 5.x
Если вы используете Visual Studio 2012 или 2013, необходимо выбрать вкладку Online при добавлении шаблона, чтобы скачать его из коллекции Visual Studio. Кроме того, вы можете установить шаблон непосредственно из коллекции Visual Studio заранее. Так как шаблоны включены в Visual Studio 2010, версии коллекции можно установить только в Visual Studio 2012 и 2013.
- Генератор EntityObject EF 5.x для C#
- Генератор EntityObject EF 5.x для веб-сайтов C#
- Генератор EntityObject EF 5.x для VB.NET
- Генератор EntityObject EF 5.x для веб-сайтов VB.NET
Если требуется только создание кода ObjectContext без необходимости изменять шаблон, можно вернуться к генерации кода EntityObject.
Если вы используете Visual Studio 2010, этот шаблон уже установлен. Если вы создаете новую модель в Visual Studio 2010, этот шаблон используется по умолчанию, но файлы TT не включены в проект. Если вы хотите настроить шаблон, его необходимо добавить в проект.
Генератор самоотслеживающих сущностей (STE)
Этот шаблон создаст классы сущностей Self-Tracking и контекст, производный от ObjectContext. В приложении EF контекст отвечает за отслеживание изменений в сущностях. Однако в сценариях N-Уровня контекст может быть недоступен на уровне, который изменяет сущности. Самоотслеживающиеся сущности помогают отслеживать изменения в любом слое. Дополнительные сведения см. в разделе самоотслеживаемые сущности.
Замечание
Шаблон STE не рекомендуется
Мы больше не рекомендуем использовать шаблон STE в новых приложениях, он по-прежнему доступен для поддержки существующих приложений. Ознакомьтесь с статьей о разъединенных сущностях для получения информации о других вариантах, которые мы рекомендуем для сценариев N-уровня.
Замечание
Нет версии EF 6.x шаблона STE.
Замечание
Нет версии шаблона STE Visual Studio 2013.
Visual Studio 2012 г.
Если вы используете Visual Studio 2012, необходимо выбрать вкладку Online при добавлении шаблона, чтобы скачать его из коллекции Visual Studio. Кроме того, вы можете установить шаблон непосредственно из коллекции Visual Studio заранее. Так как шаблоны включены в Visual Studio 2010, версии коллекции можно установить только в Visual Studio 2012.
- Генератор STE EF 5.x для C#
- Генератор STE EF 5.x для веб-сайтов C#
- Генератор STE EF 5.x для VB.NET
- Генератор STE EF 5.x для веб-сайтов VB.NET
Visual Studio 2010**
Если вы используете Visual Studio 2010, этот шаблон уже установлен.
Генератор сущностей POCO
Этот шаблон создаст классы сущностей POCO и контекст, производный от ObjectContext
Замечание
Рассмотрите возможность использования генератора DbContext
Генератор DbContext теперь является рекомендуемым шаблоном для создания классов POCO в новых приложениях. Генератор DbContext использует новый API DbContext и может создавать более простые классы POCO. Генератор сущностей POCO по-прежнему доступен для поддержки существующих приложений.
Замечание
Нет версии EF 5.x или EF 6.x шаблона STE.
Замечание
Отсутствует версия шаблона POCO Visual Studio 2013.
Visual Studio 2012 и Visual Studio 2010
При добавлении шаблона необходимо выбрать вкладку Online , чтобы скачать ее из коллекции Visual Studio. Кроме того, вы можете установить шаблон непосредственно из коллекции Visual Studio заранее.
- Генератор POCO EF 4.x для C#
- Генератор POCO EF 4.x для веб-сайтов C#
- Генератор POCO EF 4.x для VB.NET
- Генератор POCO EF 4.x для веб-сайтов VB.NET
Что такое шаблоны для "Веб-сайтов"
Шаблоны "Веб-сайты" (например, EF 5.x DbContext Generator for C# Web Sites) предназначены для использования в проектах веб-сайта, созданных с помощью файла —> New -> Web Site.... Они отличаются от веб-приложений, созданных с помощью файла —> New —> Project..., которые используют стандартные шаблоны. Мы предоставляем отдельные шаблоны, так как для них требуется система шаблонов элементов в Visual Studio.
Использование шаблона
Чтобы начать работу с шаблоном создания кода, щелкните правой кнопкой мыши пустое место в области конструктора EF и выберите "Добавить элемент создания кода...".
Если вы уже установили шаблон, который вы хотите использовать (или он был включен в Visual Studio), он будет доступен в разделе "Код " или " Данные " в меню слева.
Если у вас еще нет шаблона, выберите "Online " в меню слева и найдите нужный шаблон.
Если вы используете Visual Studio 2012, новые TT-файлы будут вложены в edmx-файл.*
Замечание
Для моделей, созданных в Visual Studio 2012, необходимо удалить шаблоны, используемые для создания кода по умолчанию, в противном случае будут созданы повторяющиеся классы и контекст. Файлы по умолчанию — <имя> модели.tt и <имя> модели.context.tt.
Если вы используете Visual Studio 2010, файлы tt добавляются непосредственно в проект.