Использование Entity Framework 3.5 и 4.0 в одном проекте - PullRequest
2 голосов
/ 15 февраля 2011

Мне интересно, если при использовании VS.Net 2010 у меня может быть код Entity Framework 3.5, работающий по стороннему коду 4.0. У меня есть проект, над которым я работаю, часть которого в настоящее время написана с использованием EF 3.5. Я хотел бы начать использовать EF 4.0 для всего нового, что мы добавляем в проект, и постепенно преобразовывать материал EF 3.5. Возможно ли запустить два бок о бок в одном проекте?

Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 15 февраля 2011

Преобразование сборки с вашим кодом EF из .NET 3.5 в .NET 4.0 (EFv1 в EFv4 - должно быть автоматическим) и начало добавления новых функций - это единственный реальный способ сделать это. Как упоминалось в другом ответе, вы не можете запустить две версии .NET в одном проекте. Совместное использование EFv1 и EFv4 потребует второго проекта с отдельным EDMX и т. Д. Объединение этих проектов позже добавит дополнительную работу и сложность, чем преобразование текущей версии.

1 голос
/ 15 февраля 2011

Вы можете реализовать .Net 4 выше своего стека, например, в виде пользовательского интерфейса, и при этом использовать .Net 3.5 на более низких уровнях, таких как доступ к данным или бизнес-уровень.

Однако нельзя использовать .Net 4 на более низких уровнях, таких как доступ к данным или бизнес-уровень, и .Net 3.5 на пользовательском интерфейсе, если только изменение границы CLR не разделено чем-то вроде WCF, позволяющим каждому запускаться в своем собственном домене приложений. Попытки использовать ссылки .Net 3.5 из .Net 4 приведут к ошибкам компиляции, говоря, что dll не присутствует.

1 голос
/ 15 февраля 2011

К сожалению, не в том же проекте.Выбор версии фреймворка находится на уровне проекта, поэтому вам придется разделить код 4.0 на отдельный проект и сослаться на него из 3.5.

...