NHibernate,Entity Model или LightSpeed, что предпочтительнее?
Кто-нибудь может сказать, что лучше всего подходит для приложений, ориентированных на производительность?
2 ответа
Все вышеперечисленное. Или ничего из вышеперечисленного. Невозможно определить, не оценивая производительность и не видя, какой из них работает или не работает для вас.
Я бы согласился с существующими здесь ответами: поймите, что на самом деле означает производительность для вашего приложения, прежде чем что-то наполовину взволновать (большинство из нас были там). Если вы ищете что-то сверхпроизводительное, но которое все еще имеет какое-то поведение "ORMish" и использует некоторое обезьянье кодирование из уравнения ADO.Net, взгляните на различные.Net MicroOrms, такие как:
Есть несколько других, на некоторые из которых есть ссылки с этого сайта.
Если вы действительно застряли с этими тремя вариантами, это определенно зависит от множества факторов и от того, сколько времени вы тратите на настройку. При этом я использовал все три довольно мало, особенно NHib 2-3 и EF 4-6. Я думаю, что если вы делаете просто быстрое и грязное кодирование, не тратя много времени на оптимизацию, LightSpeed - это действительно хороший выбор, и я лично нашел, что он очень легко превосходит два других, когда дело касается большинства основных операций CRUD. и LINQ запросы.
Большим недостатком LightSpeed является то, что вы должны наследовать от их базовых классов. Это несколько смягчается частичной поддержкой классов, и вы также можете вставлять свои собственные базовые классы между ними, а также нет истинной поддержки "CodeFirst", хотя вы можете вручную кодировать классы и пропускать конструктор, если хотите. Все они работают хорошо, если настроены правильно. Просто выберите правильный инструмент для работы.
Что бы вы ни выбрали, используйте ваш SQL Profiler / Mini Profiler / NHProf / EFProf и т. Д...