私は現在、いくつかの WCF サービスの設計を検討しており、操作/データ コントラクトを処理する最善の方法についてコミュニティの意見を得たいと考えていました。
私は 2 つの基本的な操作契約を持っています。1 つ目は見積もりを作成し、2 つ目はアイテムを見積もりに追加します(そして、舞台裏で合計を計算します)。
1 つ目は、顧客情報と店舗情報を受け取り、 quoteを返します。
2 つ目は、見積もりとアイテム オブジェクトを受け取り、合計を計算して、アイテムを含む見積もりを返します。
私の質問は、このシナリオでデータ コントラクトを設計する方法についてです。
CreateQuoteの場合、顧客プロパティと店舗プロパティを設定して見積もりオブジェクトを渡す必要がありますか、それとも顧客と店舗オブジェクトを含むが見積もりオブジェクトを渡さない何らかの種類の QuoteRequest オブジェクトが必要ですか?
AddQuoteItemの場合、Quote オブジェクトを含む必要なプロパティ セットを使用して QuoteItem オブジェクトを渡す必要があります。または、Quote オブジェクトとアイテム オブジェクト (関係なし) を持つ QuoteItemRequest オブジェクトが存在し、QuoteItem オブジェクトを使用して再計算された Quote が存在する必要があります。戻ってきた?
言い換えれば、彼らはこのように見えるべきですか?
Quote CreateQuote(Quote quote);
Quote AddQuoteItem(QuoteItem quoteItem);
それとも、彼らはこのように見えるべきですか?
Quote CreateQuote(QuoteRequest quoteRequest);
Quote AddQuoteItem(QuoteItemRequest quoteItemRequest);