2013-08-02 106 views
0

我在ASP.NET MVC 4 C#中構建網站。 要求如下: 0.通過在多個頁面上收集所需的詳細信息來構建訂單。設計模式來管理C#中的對象依賴項#

  1. 用戶在最終提交訂單前應該能夠來回導航(檢查輸入的值)。

  2. 根據當前選擇,可能會在隨後的頁面中收集依賴關係w.r.t數據。例如,如果我更改產品需要運送的國家/地區,則需要更改下一頁適用的關稅&。因此,後續頁面中的數據需要失效。如果修改字段不會影響任何其他數據(訂購數量的更改),則當前選擇需要保留。

對於情景1,我計劃使用紀念圖案。該對象將被序列化並保存在數據庫中。 但是,我不知道如何處理場景2.我確定會有一個設計模式,我可以在這裏使用。代碼示例將非常有幫助。

最初我想到了Observer模式。但是,我沒有任何活動的訂閱者可以對更改採取行動(數值將保存在數據庫中,並會加載到下一頁/上一頁)。此外,我們大多在這裏查看單個存儲實體(字段1和字段2將在第1頁填寫,字段3,4,5在第2頁......等)

回答

0

我會分離責任這樣你的場景: 1.管理頁面導航和交互 2.對象的狀態的意識

因爲你要根據你的情況複雜的頁面導航有,我會建議你使用介體來管理頁面之間的交互/通信。 另一方面,您需要以某種方式管理對象的狀態,並基於該狀態您需要使無效並採取行動,因此您還需要具有狀態模式。

之後,有一個關於場景的知識,您可以使用像使用這些已實施模式(調解器,狀態)來管理場景的usecase/application控制器。

+0

謝謝......併爲遲到的迴應感到抱歉。 – Modi