В чем разница между различными шаблонами данных, которые предоставляет Microsoft? - PullRequest
3 голосов
/ 03 сентября 2011

Примечание. Речь идет не о разнице между первой базой данных, первой моделью и первым кодом.

У Microsoft есть ряд инструментов для упрощения использования DbContext. К сожалению, там, похоже, почти нет описания, а также нет документации о том, чем они являются, а тем более, что они делают.

В чем разница между:

Ответы [ 2 ]

4 голосов
/ 11 сентября 2011

Я обычно не отвечаю на свои вопросы, но вот что я понял:

Разница между ADO.NET C# DbContext Generator и ADO.NET C# POCO Entity Generator заключается в том, что первый создает контекст на основе DbContext, а второй создает их на основе ObjectContext.

В основном они используются в подходах Model First и Database First. Разница между Model First и Database First заключается в том, что в Database First вы определяете свою модель данных в базе данных, а затем выполняете обратный инжиниринг модели (т. Е. Создаете файл .edmx) из базы данных. При использовании Model First вы создаете модель в конструкторе (опять же, в файле .edmx) или вручную, а затем генерируете базу данных из этой модели.

В обоих случаях вы затем генерируете классы POCO и либо DbContext, либо ObjectContext из файла .edmx.

Entity Framework Power Tools CTP1 реверс-инжиниринг модели Code First из базы данных, включая класс POCO, DbContext (не думаю, что он предлагает генерацию ObjectContext) и сопоставления (с помощью метода OnModelCreating).

Итак, что сводится к тому, что в Database First и Model First "модель" определяется файлом xml .edmx (или, в некоторых случаях, несколькими файлами). В то время как в Code First модель определяется с использованием отображений свободного кода в OnModelCreating.

При использовании инструментов Power для реинжиниринга базы данных он не создает файл .edmx, а создает сопоставления в коде. Таким образом, пропуская xml среднего человека.

1 голос
/ 04 сентября 2011

ADO.NET C# POCO Entity Generator существует в течение длительного времени и является частью подхода Mode First. Читайте об этом здесь .

Здесь обсуждаются различия между ADO.NET C# POCO Entity Generator и ADO.NET C# DbContext Generator: ADO.NET DbContext Generator и ADO.NET Poco Entity Generator (ObjectContext) .

Entity Framework Power Tools CTP1 - это капля полезных инструментов для контекстного меню проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...