title: DDD: one-to-many relationship between user aggregate root and almost all entities in other aggregates
body: <p>I have the following DDD scenario, grouped into the following aggregates:</p>
  
  <p>User,<br>
  Friends (User Associations),<br>
  File (for user uploading),<br>
  Galleries (grouping of files),<br>
  Messages (user communication),<br>
  Groups (users can create and other members can join),<br>
  GroupMessages (messages sent to all members of a group),<br>
  GroupForums (group members can discuss various topics) </p>
  
  <p>This is where it gets confusing.  A user is associated with everything down to GroupForums.  It seems illogical to have to go through the User repository to access the other aggregates although, from a cascading standpoint, if I removed the user, technically, the records associated with the user should go away as well.</p>
  
  <p>It seems as if I should not add all of the one-to-many associations that exist here to the user entity either, as hydrating from the database seems to be ridiculous, especially if I try pulling every record associated with the user.  What is the recommended strategy for organizing your aggregates, and repositories as well as proper way of dealing with a lot of one-to-many relationships for a given entity?</p>