Tengo una entidad llamada Master que está compuesta por varias entidades Slave.
Solo puede haber un Maestro en mi base de datos y quiero consultar repositorios para obtener el Esclavo para una identificación determinada.
Inicialmente creé un SlaveRepository y lo pregunté por id. Eso parece estar bien y funciona, y otros desarrolladores podrían usar mi repositorio.
Luego pensé en las raíces agregadas y creé un MasterRepository y devolví el Master y luego hice un ciclo para obtener la entidad Slave requerida. El problema que sentí aquí es que una vez que expongo esto a otros desarrolladores tendrían que hacer lo mismo, así que tuve un método en el MasterRepository llamado GetSlaveByID (id de cadena) y luego pude obtener el Slave directamente (oculta la funcionalidad del bucle )
Ahora, ¿debería mi repositorio devolver un Esclavo aunque se llame MasterRepository? Y lo más importante, ¿cuál es el camino correcto?
Estoy en las primeras etapas de tratar de aplicar DDD y TDD, por lo que probablemente hay muchas cosas en las que debo pensar antes de decidir cuál es la forma correcta, supongo.