Начиная с .NET 3.5 вам не нужно украшать ваши объекты данных атрибутами WCF (DataContract, DataMember). Если вы не используете их, будет использоваться сериализация по умолчанию - все свойства с общедоступными методами получения и установки будут сериализованы (также класс должен иметь открытый конструктор без параметров).
Общий уровень «сервис» работает точно так, как вы описали. Вы создаете слой бизнес-сервисов, который предоставляет функциональность. Эта функциональность используется внутри приложения ASP.NET. Затем вы создаете слой-обертку, который помечается атрибутами, связанными с WCF, и предоставляется как служба WCF. Ваш уровень WCF может рассматриваться как фасад и объединять несколько бизнес-вызовов в один вызов веб-службы.