Создание модели Entity Framework - PullRequest
4 голосов
/ 18 июля 2010

При использовании Entity Framework есть два основных способа создания вашей модели.Вы либо создаете модель на сервере SQL, либо в конструкторе Visual Studio EF.Это изложено ниже.

Начните с базы данных

Сначала вы создаете модель в базе данных вашего SQL-сервера, а затем указываете EF, чтобы создать для вас файл .edmx.Используя этот подход, вы можете использовать SQL Server Management Studio для создания всех ваших моделей и отношений.

Начните с Visual Studio EF Designer

Этот подход заключается в том, чтобы сначала создать модель в Visual Studio ииз этого создайте свою базу данных.Делая это, кажется, что вам не нужно слишком заботиться о таблицах и отношениях.

Вот что я делаю и почему я делаю это таким образом

Я начинаю с создания своей моделииспользуя SQL Server Management Studio.Я делаю это, потому что я думаю, что проще создавать и изменять таблицы с помощью этого инструмента, а также я точно знаю, что создается.Я создаю свою модель EF, указывая ее на мою существующую базу данных.После этого я создаю Проект базы данных Visual Studio , чтобы моя база данных была записана в файлы, которые я поместил в систему управления версиями.Когда мне нужно внести изменения, я изменяю базу данных, а затем обновляю свой файл .edmx, а также свой проект базы данных.

Мне было интересно, каковы плюсы и минусы этих различных подходов и каковы должны быть критериирешить, какой использовать?Я делаю это неправильно?Должен ли я сначала создать свою модель в Visual Studio?

Ответы [ 2 ]

2 голосов
/ 18 июля 2010

Я не думаю, что есть «правильный» или «неправильный» способ сделать это, многое зависит от того, как вы развернете свой код, куда он направляется и т. Д. Существует также третий путь, который написал Скотт Гатри о недавнем:

http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx


В качестве примечания, даже если вы начинаете с дизайнера моделей, я думаю, что вам всегда нужно думать о своих таблицах / отношениях, так как неправильное их использование в базе данных может привести к серьезным проблемам в дальнейшем.

0 голосов
/ 08 июня 2011

Я не думаю, что есть правильный или неправильный путь.

В нашей компании мы сначала разрабатываем изменения базы данных, применяем их к модели edmx для существующих моделей.
Для новых моделей сначала создаем модель edmx, а затем генерируем базу данных.С этого момента мы обычно обновляем базу данных напрямую.После того, как мы проверили наш код на внутреннем уровне и он работает правильно, и мы знаем, что наша база данных SQL верна (и, конечно, до регистрации), мы затем применим изменения к проекту базы данных, выполнив сравнение SQL с базой данных.к проекту базы данных.

Это очень хорошо сработало для нас.

...