オブジェクトを永続ストアに保存するときのサービス層とリポジトリ層の責任について頭を悩ませようとしています。
私の現在の理解はこれです:
私のコントローラーでは、ユーザーが(フォームから)送信したデータから「メモ」オブジェクトを作成しました。次に、ユーザーは「NoteService」で「保存」を呼び出します(依存性注入によってそこにあります)。
「NoteService」の「Save」メソッド内でビジネス ロジックの検証を実行し、「Note」オブジェクトを「NoteRepository」の「Save」メソッドに渡します。
次に、「NoteRepository」の「Save」メソッドは、このオブジェクトに既存の主キーがあるかどうかを確認し、存在する場合はデータベースからそのオブジェクトを取得し、渡された「Note」オブジェクトを使用してそのプロパティを更新し、保存しますデシベルに戻ります。主キーがない場合、オブジェクトは単純にデータベースに保存され、新しく作成された主キーとともにサービスに返されます。