NHibernate против EF4 - производительность на младшем компьютере - PullRequest
1 голос
/ 28 февраля 2010

Я работаю над небольшим приложением Windows Form, которое будет работать на компьютере с нетбуком. Я буду контролировать аппаратное обеспечение / среду, то есть предоставлять аппаратное и программное обеспечение конечному пользователю. У него будет одна база данных на локальном диске, к которой будет иметь доступ только это приложение. В одной из таблиц будет несколько таблиц и несколько сотен (или, может быть, несколько тысяч) строк. Никаких внешних ключей и т. Д. Действительно просто. Мне просто нужно место для хранения этих данных и выполнения простых запросов и сопоставления с объектами (ORM).

Я понимаю основы Nhibernate и EF4 и немного поэкспериментировал с обоими. Я бы использовал EF4 с POCO, если бы решил использовать EF.

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

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

Любые комментарии приветствуются. Я знаю, что это широко открытая тема. ;)

Ответы [ 2 ]

3 голосов
/ 28 февраля 2010

Я не думаю, что разница между этими двумя измеримы даже при небольшом количестве данных. Сам SQL-запрос займет намного больше времени, чем работа, выполняемая orm.

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

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

2 голосов
/ 28 февраля 2010

Мне нравится NHibernate, и я все еще жду EF, чтобы произвести на меня впечатление, но для вашего не столь сложного приложения я бы не использовал ни одно из них.

Вместо этого я посоветую использовать Linq2Sql, самое простое и достаточно мощное решение.

Я думаю, что NHibernate и EF для более сложных приложений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...