2016-12-31 11 views
1

私は、メインカテゴリとサブカテゴリを持っている情報を持つ請求書を作成しますメインカテゴリには異なる価格のサブカテゴリがあります。管理者はカテゴリを追加できます。注文作成中c#注文/追加タイプ

public void OrderAdd(Cat1,cat2,cat3) 
    { 
    // add Method Here 
    } 

が、私はそれを追加することができるカテゴリーの固定または一定の数を持っていないと、それは同様に削除することができますが、私はこの を行う方法がわかりません例えば、(クライアントのみサブカテゴリを選ぶことができます)常に をカテゴリーを取る必要があり、注文方法:

お客様は、我々は彼に5つのカテゴリーを与える修理ガレージを移動して、彼はすべてのそれらのカテゴリのサブカテゴリを選択する必要が

例:

cat 1 => SubType 2 => Price. 
cat 2 => SubType 6 => Price. 
cat 3 => SubType 2 => Price. 
cat 4 => SubType 4 => Price. 
cat 5 => SubType 8 => Price 
Final Price => ... 

ので、多分、顧客が来るには再び15日後にメニューが

主なカテゴリが一定でない...それは今だけなど3カテゴリーを持って変更されました。

どうすればそのタイプの注文方法を作成できますか?

答えて

1

私はあなたの質問を理解しているかどうかはわかりませんが、価格を返す個々のサブカテゴリメソッドを追加できるカテゴリの代理人を作成することができます。そうすれば+ =を使用して新しいサブカテゴリを追加するか、 - =を使用してデリゲートカテゴリを期待どおりに実行し続けることができます。繰り返しますが、私はあなたの質問には分かりません。カテゴリのデリゲートとサブカテゴリメソッドを含むインスタンスのカスタマークラスを作成することができます。 subCategoriesが変更されたときにこれらのプロパティを更新するには、IObserver/IObservableパターンを使用することをお勧めします。これは、OOPの設計を維持し、再利用可能で更新可能なものを維持するのに役立ちます。

+0

こんにちは、私は、5つのパラメータcat1、cat2、cat3、cat4を取るOrderメソッドを持っていると言うことができます。このメソッドは、より多くのまたはより少ないパラメータを取るために後で変更することができます追加して削除する – Huster

+0

List をパラメータとして追加して、必要な多くのカテゴリを処理することができます。例:public void OrderAdd(List currentCategories){foreach(currentCategoriesのvarカテゴリ)category.//addメソッドはここにあります。 –

+0

カテゴリにサブカテゴリを組み込むには、各カテゴリにサブカテゴリのリストを含める必要があり、それらにアクセスして更新可能にするインターフェイスISubCategoryListを作成することができます。 –

関連する問題