/// <summary> /// Expone los datos del elemento y su lista (incluidas sus herencias) /// SOLO del tipo requerido /// </summary> /// <param name="taller">Elemento a exponer</param> /// <param name="ETipo">Tipos de ítems de la lista a mostrar</param> /// <returns></returns> public static string Listar(Taller taller, ETipo tipo) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("Tenemos {0} lugares ocupados de un total de {1} disponibles", taller.vehiculos.Count, taller.espacioDisponible); sb.AppendLine(""); foreach (Vehiculo v in taller.vehiculos) { switch (tipo) { case ETipo.SUV: if (v is Suv) { Suv suv = (Suv)v; sb.AppendLine(suv.Mostrar()); break; } else { continue; } case ETipo.Ciclomotor: if (v is Ciclomotor) { Ciclomotor ciclomotor = (Ciclomotor)v; sb.AppendLine(ciclomotor.Mostrar()); break; } else { continue; } case ETipo.Sedan: if (v is Sedan) { Sedan sedan = (Sedan)v; sb.AppendLine(sedan.Mostrar()); break; } else { continue; } default: sb.AppendLine(v.Mostrar()); break; } } return(sb.ToString()); }
/// <summary> /// Expone los datos del elemento y su lista (incluidas sus herencias). /// SOLO del tipo requerido /// </summary> /// <param name="taller">Elemento a exponer</param> /// <param name="tipo">Tipos de ítems de la lista a mostrar</param> /// <returns>Retorna la informacion de los vehiculos de la lista segun el tipo pasado como parametro.</returns> public static string Listar(Taller taller, ETipo tipo) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("Tenemos {0} lugares ocupados de un total de {1} disponibles.\n", taller.vehiculos.Count, taller.espacioDisponible); sb.AppendLine(""); foreach (Vehiculo v in taller.vehiculos) { switch (tipo) { case ETipo.SUV: Suv suv = v as Suv; if (!(suv is null)) { sb.AppendLine(suv.Mostrar()); } break; case ETipo.Ciclomotor: Ciclomotor ciclo = v as Ciclomotor; if (!(ciclo is null)) { sb.AppendLine(ciclo.Mostrar()); } break; case ETipo.Sedan: Sedan sedan = v as Sedan; if (!(sedan is null)) { sb.AppendLine(sedan.Mostrar()); } break; default: //Aca ingresa cuando sea ETipo.Todos. sb.AppendLine(v.Mostrar()); break; } } return(sb.ToString()); }