Существует множество доступных ORM, но некоторые из них коммерческие ( LLBLGen Pro ). Хороший выбор для вас, вероятно, NHibernate 2.1 (я думаю, что NHibernate 3.x требует .NET 3.5).
Вам также следует подумать о переходе на более новую версию .NET. Следует избегать начала новой разработки на .NET 2.0, и использование новой технологии для существующей старой кодовой базы IMO портит архитектуру и удобство обслуживания приложения.
Edit:
Итак, я очень признателен, если возможно сгенерировать необходимый код из существующей БД.
Наиболее важным является стр.2 - сначала БД.
ORM и генерация кода - две разные области. Сначала БД не означает генерацию кода - это означает отображение в существующую базу данных без необходимости ее изменения. ORM не имеет смысла генерировать код для вас. Смысл ORM состоит в том, чтобы позволить вам отображать БД на классы и абстрактные запросы. Если для вас важнее всего генерация кода, вам следует искать что-то еще, а не ORM. В NHibernate нет такой генерации кода, но есть несколько дополнительных проектов, которые добавляют подобные функции.