Мы собираемся начать новый проект.Это будет группа веб-приложений с большим количеством общих компонентов.Он будет иметь до 50 000 посещений уникальных пользователей в день, и это будет своего рода панель управления.Все проекты будут собраны в asp.net mvc 2, и все они будут работать в одной базе данных SQL Server.
Мы были очень увлечены NHibernate, пока я не нашел ormbattle.net веб-сайт, где тесты производительности для NHibernate выглядят очень плохо по сравнению с другими картографами.В этом резюме я обнаружил неизвестную мне библиотеку. BLToolkit выглядит действительно многообещающе, но есть и преимущества, и недостатки.
BLToolkit имеет слабую поддержку сообщества, очень мало примеров, и я действительно не слышал о ком-то, кто использовал его в большомпроект.Кроме того, он очень легкий, что означает, что он не поддерживает многие-многие отношения, ленивую загрузку и кэширование ...
С другой стороны, производительность действительно велика, а также очень хорошая поддержка Linq.
В этом случае я выбираю один из этих способов:
- Не обращайте особого внимания на производительность и используйте Nhibernate или EF или просто L2SQL (какой из них будет лучше?)и использовать ORMapper, который имеет гораздо больше полезных функций.
- Сконцентрируйтесь на этой великолепной производительности и создайте собственное решение на основе этого BLToolkit, используя эту библиотеку в основном как очень хорошую базу.Возможно, мне не нужно кэширование, если я буду использовать кэширование действий в MVC.Вероятно, мне не нужны ассоциации, поскольку я могу написать хорошие запросы LINQ с выражениями соединения.Вероятно, мне не нужна ленивая загрузка, поскольку я буду тщательно строить точные методы, которые получат из БД все, что мне нужно.
В этом случае я не ищу вердикт.То, о чем я прошу, - это небольшая дискуссия, чтобы указать мне на некоторые проблемы, которые я не рассматривал, или просто поделиться со мной своим опытом использования не только BLToolkit, но также других или картографов.