Обход DAO и работа напрямую с разъемом ADO (или родным драйвером) - это именно то, что делают все, и в этом нет ничего «противного» или неправильного. Если это действительно крайние случаи для вас, то какую основу вы ожидаете? Хуже всего то, что когда люди оборачивают все свои странные махинации вокруг своего DAO, чтобы сделать что-то, от чего они сосут, просто во имя «не ходить <вставьте DAO здесь>».
Я имею в виду, что если у вас есть сохраненный процесс, то вы, очевидно, решили, что агностицизм БД выходит за рамки (в любом случае, это переоцененная цель), так почему же возникают опасения по поводу использования ADO.Net? Просто сделайте это очень явным в коде, не скрывайте это. Скажите это громко и гордо: «Я использую базу данных, и я не делаю снимок того, что кто-то думает!». О, и, пожалуйста, убедитесь, что он все еще отделен от остальной логики. Я не хочу, чтобы мои модульные тесты замедлялись из-за вашего сохраненного процесса.