EF в реальной жизни, я хочу верить (У кого-нибудь есть хорошие указатели на нетривиальные примеры EF 1.0 (3.5) или 4.0?)

Недавно я обнаружил, что я становлюсь более негативным в отношении EF и не могу не задаваться вопросом, является ли реальная проблема моим собственным знанием по этому вопросу. Я видел много простых/искусственных примеров использования EF, особенно в сочетании с MVC, но я еще не нашел реальных примеров использования EF и использования всех функций. Кроме того, все попытки, которые я сделал до сих пор использовать EF, по-видимому, были устранены либо дефицитом в дизайнере VS2008 (например, поддержка полей или столбцов, генерируемых сервером), либо необходимостью предоставлять дополнительные коды для поддержки обновления данные возвращаются к источнику (где я ожидал, что это будет поддерживаться EF).

Чтобы я мог действительно изучить это и принять более обоснованное решение, может ли кто-нибудь указать мне на некоторые примеры использования EF с ASP.NET, например, в реальной ситуации - например, получение некоторых связанных данных из основного источника, обновляя эти данные, а затем сохраняя эти изменения в источнике. В любом примере, который вы можете предоставить, я хотел бы видеть только изменения, сделанные пользователем, которые отправляются обратно на источник, а не просто перезаписывать текущую версию.

Я также хотел бы увидеть некоторые примеры возможности использования EF в ситуации веб-службы/WCF, где снова объект извлекается связанными объектами, и любые сделанные изменения сохраняются обратно в хранилище данных.

Я бы предпочел как можно больше примеров использовать EF 1.0 (3.5), так как это версия, которая в настоящее время доступна для использования в производстве, но мне также было бы интересно, чтобы какие-либо примеры EF 4.0, которые доказывают, что все будет готово лучше.

Я хочу верить, что EF - это путь вперед. Мне особенно нравится идея обращения с базой данных, как если бы это была просто куча связанных объектов (и в прошлом она часто переворачивала мои собственные версии), но кажется, что EF только заходит так далеко. У меня есть несколько новых проектов на горизонте с участием довольно больших баз данных и в настоящее время не может оправдать использование EF, хотя я бы очень хотел.

Ответ 3

Я думаю, что это будет некоторое время, прежде чем EF догонит Hibernate.

Ответ 4

Не могу предоставить вам код, но может рассказать вам мой опыт. Недавно попробовал linq to sql в реальном проекте. Это было неплохо, но это не соответствовало дизайну, основанному на доменах (или я просто был слишком глупым, чтобы он выглядел так, как мне хотелось бы).

Пробовал linq для сущностей. Короче - потрачено впустую ~ 2 дня. Я отказался от своей надежды после первых нескольких раз, когда проходил редактирование сопоставлений.

Придерживается NHibernate (потому что он ничего не генерирует). Но все они разочаровываются в поддержке sproc.

Возможно, следующий выпуск будет лучше. На данный момент это кажется неуклюжим для меня.

Ответ 5

Я задал аналогичный вопрос здесь, который относится к ASP.NET MVC. У меня в основном тот же вопрос, который вы делаете в том, что я не видел много "реальных" примеров того, как EF работает с веб-сценарием .NET.

Ответ 6

Я искал информацию о EF сам, и когда был направлен сюда, я нашел большинство ответов здесь, датированных после выпуска EF4 CTP4.

Возможно, кто-то, кто читает мой ответ, скажет, что функции в CTP4 также датируются, поэтому я предлагаю всем, кто ищет реалистичную инфраструктуру сущности для реального, взглянуть на Блог команды ADO.net и проверьте последние новости