4

これに対する推奨される解決策をお願いしたいと思います。コンペティションのリストがあります。各コンペティションには、参加者が支払わなければならない料金が定義されています。私は 2 つの解決策を考えていますが、それはドメイン駆動設計で最も適切な解決策でなければなりません。1 つ目は、リストの代わりにコンペティションで辞書を作成することです。辞書のタイプは <Participator, bool> になります。2 つ目は、participator と feePaid の 2 つのフィールドを持つ別のクラスを作成することです。そして競争では、その新しいクラスのオブジェクトのリストがあります。

ありがとうございました

4

2 に答える 2

6

典型的な多対多の関係のように聞こえます。次のように、エントリ関連クラスでモデル化します。

class Participator {
}
class Competition {
    Currency fee
}
class Entry {
    Competition competition
    Participator participator
    Boolean feePaid
}
于 2009-01-10T15:02:53.930 に答える
5

これを処理する方法は、コンペティション、参加者、および登録を行うことです。参加者はコンテストに登録し、登録を作成します。登録は、コンテスト ID、参加者 ID、料金が支払われたかどうかを示すフラグ、およびその他の登録固有のデータ (登録日など) で構成されます。これは、データベースで「結合テーブル」としてモデル化されます (追加データを含む)。アプリ側では、参加者には登録のリストがあり、各登録には関連付けられた参加者とコンペティションがあります。同様に、各コンペティションには登録のリストがあります。

于 2009-01-10T14:47:58.220 に答える