public override DTOAlineacion CrearDto(Entidad entidad) { if (!(entidad is Alineacion alineacion)) { logger.Error("Casteo invalido de la entidad " + entidad + " a Alineacion"); throw new CasteoInvalidoException("La entidad no es del tipo Alineacion"); } DTOAlineacion dto = FabricaDTO.CrearDTOAlineacion(); TraductorEquipo traductorEquipo = FabricaTraductor.CrearTraductorEquipo(); dto.Equipo = traductorEquipo.CrearDto(alineacion.Equipo); TraductorObtenerJugadores traductorJugadores = FabricaTraductor.CrearTraductorObtenerJugadores(); dto.Jugador = traductorJugadores.CrearDto(alineacion.Jugador); dto.Partido = FabricaDTO.CrearDTOPartidoSoloId(); dto.Partido.Id = alineacion.Partido.Id; dto.EsCapitan = alineacion.EsCapitan; dto.EsTitular = alineacion.EsTitular; dto.Id = alineacion.Id; dto.Posicion = alineacion.Posicion; return(dto); }