2015-05-15 2 views
2

Я новичок в MVC и EF, поэтому этот вопрос может показаться немым для опытных людей MVC, поэтому я приношу свои извинения.Дизайн DbContext MVC 5 EF 6

Я создаю приложение MVC 5/EF 6, которое имеет 6 таблиц, не содержащих таблицы ASPNET Identity.

Было бы лучше, чтобы иметь один контекст БД со всеми таблицами или я должен разделять таблицы в своих контекстах? Я хочу подстроить каждую таблицу в директории с их представлениями CRUD, не уверен, могу ли я сделать это с помощью одного контекста DB. Также я пробовал делать отдельные контексты, но он бросал припадки, когда я пытался делать миграции.

Спасибо!

+0

Как вы обрабатываете миграции? Я попытался настроить несколько, и он взорвался. – user2719830

+0

Вам нужно указать миграцию по имени контекста, EX enable-migration mydbcontext ... –

+0

Я разработчик рабочего стола ('WPF'), и мне просто интересно, как вы будете объединять и использовать истинный потенциал 'EF', имея таблицы в разделенных контекстах. Для меня это не имеет никакого смысла. –

ответ

0

Я строил свою CMS с помощью ASP.NET MVC5 с 2 dbContext (1 для идентификации, а другой для моих основных таблиц базы данных). Похоже, что это не очень хорошо сделано при работе с разными dbContexts. Иногда обновление базы данных не позволяет указать, что есть другой экземпляр миграции в другом dbContext, который следует учитывать первым (это было неправильно, потому что я уже обновил базу данных). Иногда требовалось обновить оба контекста базы данных, чтобы обеспечить правильную миграцию. Это действительно не смешно. Может быть, я не делал это хорошо, но я уверен, что у вас должно быть меньше проблем и conflit, используя только один dbContext. И может помочь при использовании соединения в запросе в качестве реляционной базы данных. И вы теряете много гибкости и преимущество сущности Framework при использовании большого количества dbContexts.