Шаблон сервисного фасада - это одно имя. Простые контракты между бизнес-логикой и уровнем данных.
Сервисные классы или компоненты (назовите это как хотите) определяют и реализуют контракт, а также организуют нижний уровень данных, часто обрабатывая логику транзакций для объектов данных.
В Spring вы определяете интерфейс, а затем внедряете его. Одна реализация может быть OR / M, другая может быть необработанной JDBC или ADO.NET. В некоторых средах Аспектно-ориентированное программирование позволяет вводить декларативную транзакционную логику без написания кода. Это избавляет от головной боли.
Одно предостережение: при работе с некоторыми OR / M, такими как Hibernate, используются прокси-классы. Это загрязняет вещи, потому что есть несколько случаев, когда прокси-классы вызывают проблемы. На мой взгляд, это деталь реализации, которая не должна выходить за пределы сервисного уровня. Но с Hibernate это так. Не уверен насчет реализации .NET.