アプリケーションをゼロから設計しています。これは、コーディング スキルをどんどん向上させるための学習オブジェクトとして行っています。このアプリケーションには、次の 2 つのエンティティがあります。
- 国
- 都市
国の追加は難しくありません。ビューモデルをビジネス レイヤーの CountryService に渡し、それをエンティティに変換して永続化します。
次に、都市を追加する必要があります。これを行うには、CountryId と都市のフィールドを持つビューモデルを用意します。ビューモデルを CityService に渡します。そこで、いくつかのことを行う必要があります。正しい国のエンティティを取得し、都市データを都市オブジェクトに変換し、都市オブジェクトを国に追加するか、国を都市に追加する必要があります (Nhibernate が提案する AddXXX メソッドを使用)。次に、都市リポジトリを介して国で都市を保存するか、国のサービスを介して都市で国を保存してから、国のリポジトリに保存する必要があります。
メソッドごとに1つの関数を持つという考え方で、この種の機能を構造化する方法がわかりません。