Я собираюсь оставить вопрос ORM для других и ответить только на часть вопроса, спрашивая, является ли это общим подходом.
Это общий подход, называемый SOA (сервис-ориентированная архитектура). Это имеет много преимуществ, а также подводных камней. Все это было несколько лет назад, и теперь оно все еще широко используется, но уровень возбуждения упал.
Тем не менее, в Интернете есть тонны ресурсов для исследования этого. Самая большая выгода заключается в том, чтобы думать заранее, потому что у разных людей разные представления о том, как следует внедрять SOA и что это значит. Кроме того, кроссплатформенные обещания на практике сложнее выполнить, чем люди изначально надеялись. (попробуйте, например, вызвать .NET Web-сервисы из Java. Это можно сделать, но с обеих сторон есть работа, чтобы заставить его работать.) Поэтому, если вам когда-либо нужно беспокоиться о кроссплатформенной совместимости, изучите "SOA". Кроссплатформенная совместимость ", прежде чем стать слишком глубоким. Вам лучше научиться делать это правильно, чтобы потом вас не застали врасплох, и вам не придется заново создавать набор служб, изначально предназначенных для клиентов .NET, которым теперь нужны клиенты Java (например, для приложений для смартфонов). ).
Мы совершили эту ошибку сами и в итоге нам пришлось заново создавать тонну веб-сервисов, когда мы начали разрабатывать сервисы, которые должны были использоваться клиентами Android / Blackberry. Учитывая то, как индустрия все больше ориентируется на разработку смартфонов, получение этого прямо сейчас сэкономит вам массу работы.