Подтвердить что ты не робот

Кто-нибудь еще сожалеет об использовании Entity Framework?

У меня есть проект, который реализовал Linq To SQL, и я был очень доволен этим. В течение довольно долгого времени самая большая проблема заключалась в том, что дизайнер был глючит.

К сожалению, мой проект теперь требует множественного наследования таблиц, а Linq to SQL его не поддерживает. Я решил переключиться на Entity Framework, когда узнал, что он поддерживает множественное наследование и, похоже, направляется в сторону Microsoft. Но теперь я начинаю сожалеть об этом решении.

Например, вызывая Load()? WTF? Если бы мне не нужны эти данные, я бы не просил об этом! Выяснив, что все сущностные структуры анального причуда становятся огромным шипом на моей стороне.

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

Наконец, я хотел бы спросить: где Microsoft была со всей ORM? Rails ActiveRecord работает красиво и просто уже много лет.

4b9b3361

Ответ 1

Ты не одинок в своей боли. Там была серия сообщений в блоге ADO.NET, в которых обсуждаются улучшения, которые вносятся в Entity Framework в .NET 4.0. Они кажутся довольно значительными, но достаточны ли они для ваших нужд, только вы можете судить.

Ответ 2

Хорошо, доступна VS2010 beta; вы можете развернуть виртуальную машину и посмотреть, подходит ли вам EF в 4.0?

Лично я привязался к LINQ-to-SQL на данный момент, но, вероятно, потому, что мне еще не нужны какие-либо другие функции.

Ответ 3

Я действительно с нетерпением жду возможности использовать Entity Framework в версии v4, надеюсь, Real Soon Now. Разумеется, в нашем случае это сопровождается избавлением от ORM богобоязненного дома, который больше не поддерживается, что хуже, чем чума - поэтому EF v4 выглядит как бог-посылать мне!: -)

Марк

Ответ 4

Я для одного был сильно разочарован EF v1.0. Он много обещал, но на самом деле он был чрезвычайно ограничительным, выполнялся ужасно и не поддерживал существующие приложения и инфраструктуры.

Тем не менее, EF v2.0 выглядит очень многообещающим. Microsoft открыла процесс проектирования для масс, позволяя тем из нас, кто хочет видеть EF, добиться успеха и увидеть, вписываются ли они в самые разнообразные сценарии использования, которые действительно должны предлагать наши предложения, советы и мнения.

Если вы заинтересованы в том, чтобы увидеть результаты этих усилий или хотите предоставить свой собственный вход, вы должны ознакомиться с блоком дизайна EF, здесь: http://blogs.msdn.com/efdesign/

В конце концов, если Microsoft все еще не способна создавать гибкую ORM, которая вписывается в самые разнообразные сценарии, всегда есть NHibernate. Я использую LINQ to SQL, Entity Framework и NHibernate некоторое время, а из трех NHibernate - самая дружественная, гибкая и зрелая структура. Это не так много для визуальных дизайнеров, но если вы разочарованы ограничениями, причудами, нечетным поведением и плохими характеристиками EF, NHibernate - отличная альтернатива.

Ответ 5

Я абсолютно согласен. Ленивая загрузка - это то, что убило структуру сущности для меня. Он просто открывает банку червей с прикреплением и отсоединением сущностей к экземпляру контекста. Я действительно не хочу беспокоиться об этих вещах. Но тогда кто не работал с полуподобным продуктом от Microsoft раньше:) Я рад, что они будут исправлять вещи в новой версии. До тех пор L2S кажется вашим лучшим выбором.

Ответ 6

Для продолжения:

В настоящее время я отказался от Entity Framework. Переписывание кода было tramatizing, и я не совсем доволен результатом... значительно из-за отсутствия ленивой поддержки загрузки.

Я решил вернуться к Linq to SQL и попробовать наследование на одну таблицу на данный момент. У нас не очень много детских типов, поэтому пока это должно быть уродливым, но приемлемым решением. Когда выпущена новая версия VS и Entity Framework, я рассмотрю возможность переключения снова в этот момент, потому что изменения для новой версии выглядят многообещающими.