Я слышал много хорошего о шаблонах T4.
Следующее - мое мнение, и оно не предназначено для начала пламенной войны.
У меня не было большого успеха с ORM. SQL, который они генерируют, имеет тенденцию быть менее чем оптимальным, и вам приходится прыгать через обручи, чтобы обойти ограничения в рамках. Кроме того, размещение кода запроса в вашем приложении, а не в базе данных, к которой оно, опять же, на мой взгляд, принадлежит, нарушает четкую многоуровневую архитектуру и возлагает на разработчика больше ответственности за обслуживание БД, что исключает часть преимуществ выделенного DBA. Кроме того, это делает невозможной отладку запросов в середине полета.
Я закончил писать утилиту для генерации прокси-классов БД и связанных хранимых процедур из определения таблицы и превратил ее в плагин для Visual Studio. Это около 1200 строк кода, не включая библиотеку шаблонов String . Я использую эту настройку около 6 месяцев и не жалею.