3

MVC3 と Entity Framework を使用してアプリケーションを開発しています。1 つの類似性を持つ 2 つのエンティティのサービス レイヤーがあります。

2 つのサービスは、DurationService と FieldService です。前者は Days と daysettings のリストを処理します。これらの設定には、1 日あたりのタイムスロットに関する情報 (開始時刻、終了時刻、可能な休憩時間のリスト) が含まれています。後者のサービスは、フィールドとフィールド設定のリストを処理します。これらのフィールド設定は、フィールドの可用性を決定するために使用されます。

両方のサービスで、休憩時間が重複しているかどうかを確認する必要があります。これを DurationService 用にコーディングしましたが、FieldService にもまったく同じメソッドが必要であることに気付きました。DRYの原則に違反したくないので、質問は、これをどのように処理するのが最善ですか?

両方のサービスが呼び出せる静的クラスを作成する必要がありますか? ある種の継承を使用しますか (このメソッドは共有する唯一のメソッドですが)。

4

1 に答える 1

1

アーキテクチャが、明らかに正しいことをするのを妨げているようです。それが起こらないようにしてください。

継承はおそらく正しい解決策ではありません。静的ヘルパー クラスで十分です。単純な問題には、単純な解決策が必要です。

于 2012-04-06T22:57:34.643 に答える