Сомнения в структуре сущностей - PullRequest
0 голосов
/ 19 сентября 2011

Я никогда не использовал этот фреймворк, фактически я работал с Java около двух лет, но за последние 6 месяцев я сменил работу и начал работать с платформой ASP.NET. Теперь я должен начатьновый проект, и я хочу использовать структуру сущностей, потому что я использовал только Java, я не знаком с этой технологией, поэтому у меня есть пара вопросов.

  1. Могу ли я использовать обратный инжиниринг,создать модель на основе базы данных ER?.
  2. Эта структура абстрагирует использование механизма базы данных?

Ответы [ 5 ]

5 голосов
/ 19 сентября 2011
  1. Да, вы можете создать модель из базы данных или базу данных из модели
  2. Да, вы можете использовать одну и ту же модель для многих баз данных (SQL-сервер, oracle, mysql, posgresql икаждая база данных, предоставляющая EF-провайдера)

Я думаю, что EF предназначена только для небольшой базы данных.Если у вас более 100 сотен таблиц, вы должны использовать NHibernate ( Сравнение с EF ) или другие инструменты, например Code Fluent Entities ( CodeFluent Entities, сравнить сEF )

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

1) Да.

http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-model-amp-database-first-walkthrough.aspx

2) Тоже да. Все делается через класс DbContext. Это позволяет вам получить доступ к базе данных и выполнить SQL, если хотите. Но для начала вы просто используете LINQ для запроса ваших DbSets.

2 голосов
/ 19 сентября 2011

Я согласен с вами, парень, я был в такой же форме.Вы можете легко перейти с JAVA на C #.

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

Надеюсь, это поможет!

2 голосов
/ 19 сентября 2011
  1. Да
  2. Да, в некоторой степени, возможно, придется скорректировать модель, если типы данных различаются между базами данных
0 голосов
/ 19 сентября 2011
  1. Да -> на самом деле вы можете пойти обоими путями.
  2. Да, он абстрагирует базу данных своим собственным DBcontext.

Если вы привыкли к спячке из мира Java, вы можете рассмотреть возможность использования nhibernate. У Entity Framework есть свои слабые стороны, а у nhibernate есть свои слабые места. поэтому вы должны определить, что вам действительно нужно в вашем проекте. IMHO EF обеспечивает лучшую интеграцию с остальной частью .net Framework.

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