2011-12-16 5 views
1

У меня есть проекция с использованием EF 4.0 с объектами самопроверки, у которой есть одна модель данных, и все работает нормально. Нет. Мне нужно добавить вторую модель для подключения к другой базе данных. Как только я добавлю вторую модель в проект, сборка завершится неудачно. Я получаю такие ошибки для всех объектов в первой модели.Entity Framework несколько моделей данных

Error 12 The type 'Entities.InvoiceFile' cannot be used as type parameter 'TEntity' in the generic type or method 'DataServices.SelfTrackingEntitiesContextExtensions.ApplyChanges<TEntity>(System.Data.Objects.ObjectSet<TEntity>, TEntity)'. There is no implicit reference conversion from 'Entities.InvoiceFile' to 'DataServices.IObjectWithChangeTracker' 

Любые идеи?

Если удалить сущности POCO для второй модели проекта строит хорошо, но затем я получаю ошибки во время выполнения, как этот

Test method DataServicesTest.TestStatements threw exception: 
System.InvalidOperationException: Mapping and metadata information could not be found for EntityType 'Entities.Currency'. 

ответ

0

Да, это не так легко сделать это в одном проекте. Простое решение - создать новый проект только для модели данных, затем добавить ссылку и использовать ее таким образом.

Щелкните правой кнопкой мыши по решению, выберите Add -> New Project, выберите проект библиотеки классов, в новом проекте добавьте новую модель Entity Framework.

+0

Спасибо, вы знаете, что вызывает ошибку? – Satish

+0

@Satish - Это проблемы с пространством имен. Там нет простого решения, кроме как поставить его в другой проект. –

+0

EF исследует сборку для классов, соответствующих именам, которые они ищут –

Смежные вопросы