Контракты на данные - это не что иное, как сообщения, которыми ваш клиент и сервер обмениваются между собой.
Ваша служба WCF - это тот уровень, который принимает сообщения и обрабатывает их, чтобы они могли обрабатываться вашей бизнес-логикой.
Объектами вашего домена будет ваша бизнес-логика, которая принимает обработанные сообщения, выполняет необходимые действия, а затем применяет любые события, которые необходимо применить.
Если вы следуете более Принцип разделения команд-запросов (CQS), тогда ваши команды (вставки / обновления / удаления) будут запущены для службы WCF и ничего не возвращают.Ваш клиент будет запрашивать чтение из вашей службы WCF отдельно от ваших команд (это означает, что команда InsertOrder не возвращает Order - вы должны выполнить отдельный запрос для этого).
Во всем этом ваши контракты данныхявляются сообщениями от и к вашей службе WCFВаш домен стоит за этой службой, которая обрабатывает всю бизнес-логику, которая должна произойти для того, чтобы сделать ваши чтения максимально точными.
Я отвечаю на этот вопрос из большей части CQRS (разделение ответственности между запросами и командами)в перспективе, но я надеюсь, что это объясняет, откуда я иду.
Чтобы ответить на другой ваш вопрос: - вам нужны доменные объекты -> я бы сказал, да, вы должны