В настоящее время я планирую разработать некоторые службы WCF и хочу узнать мнение сообщества о наилучшем способе обработки контрактов на операции / данные.
У меня есть 2 базовых контракта на операции, первый создаетцитата , а вторая добавляет элемент в цитату (и вычисляет итоги за сценой).
Первая получает информацию о клиенте и информация о магазине и возвращает цитату .
Второй получает цитату и объект item , вычисляет итоги и возвращает цитату с элементом .
Мой вопрос о том, как спроектировать контракты данных в этом сценарии?
Для CreateQuote , следует ли передать объект цитаты со свойством customer и свойством store или установить там?быть неким объектом QuoteRequest, который содержит объект customer & store, но без переданного объекта цитаты?
Для AddQuoteItem , если объект QuoteItem должен быть передан с необходимыми свойствами, включающими объект Quote, или должен существовать объект QuoteItemRequest, имеющий объект Quote и объект item (безотношение), а затем возвращается пересчитанная цитата с объектом QuoteItem?
Другими словами, должны ли они выглядеть примерно так?
Quote CreateQuote(Quote quote);
Quote AddQuoteItem(QuoteItem quoteItem);
Или они должны выглядеть примерно так?
Quote CreateQuote(QuoteRequest quoteRequest);
Quote AddQuoteItem(QuoteItemRequest quoteItemRequest);