public bool leer(string archivo, out Automovil datos) { bool flag_ok = false; try { FileStream fs = new FileStream(archivo, FileMode.Open); BinaryReader bin = new BinaryReader(fs); //datos = bin.ReadString(); //flag_ok = true; } catch (Exception e) { try { throw new ErrorArchivoException(MENSAJE_ERROR_ARCHIVO_LEER, e.InnerException); } catch (ErrorArchivoException error) { Console.Write(error.Message + error.InnerException); } } datos = null; return(flag_ok); }
/// <summary> /// Expone los datos del elemento y su lista (incluidas sus herencias) /// SOLO del tipo requerido /// </summary> /// <param name="c">Elemento a exponer</param> /// <param name="ETipo">Tipos de ítems de la lista a mostrar</param> /// <returns></returns> public static string Mostrar(Estacionamiento c, ETipo tipo) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("Tenemos {0} lugares ocupados de un total de {1} disponibles", c.vehiculos.Count, c.espacioDisponible); sb.AppendLine(""); foreach (Vehiculo v in c.vehiculos) { switch (tipo) { case ETipo.Camioneta: if (v is Camioneta) { Camioneta camioneta = (Camioneta)v; sb.AppendLine(camioneta.Mostrar()); } break; case ETipo.Moto: if (v is Moto) { Moto moto = (Moto)v; sb.AppendLine(moto.Mostrar()); } break; case ETipo.Automovil: if (v is Automovil) { Automovil automovil = (Automovil)v; sb.AppendLine(automovil.Mostrar()); } break; default: if (v is Camioneta) { Camioneta camioneta = (Camioneta)v; sb.AppendLine(camioneta.Mostrar()); } else if (v is Automovil) { Automovil automovil = (Automovil)v; sb.AppendLine(automovil.Mostrar()); } else if (v is Moto) { Moto moto = (Moto)v; sb.AppendLine(moto.Mostrar()); } break; } } return(sb.ToString()); }
static void Main(string[] args) { // Configuración de la pantalla Console.SetWindowPosition(0, 0); Console.SetWindowSize(Console.LargestWindowWidth / 2, Console.LargestWindowHeight - 2); // Nombre del alumno Console.Title = ""; Estacionamiento estacionamiento = new Estacionamiento(6); Moto c1 = new Moto(Vehiculo.EMarca.BMW, "ASD012", ConsoleColor.Black); Moto c2 = new Moto(Vehiculo.EMarca.Honda, "ASD913", ConsoleColor.Red); Automovil m1 = new Automovil(Vehiculo.EMarca.Toyota, "HJK789", ConsoleColor.White); Automovil m2 = new Automovil(Vehiculo.EMarca.Chevrolet, "IOP852", ConsoleColor.Blue, Automovil.ETipo.Sedan); Camioneta a1 = new Camioneta(Vehiculo.EMarca.Ford, "QWE968", ConsoleColor.Gray); Camioneta a2 = new Camioneta(Vehiculo.EMarca.Renault, "TYU426", ConsoleColor.DarkBlue); Camioneta a3 = new Camioneta(Vehiculo.EMarca.BMW, "IOP852", ConsoleColor.Green); Camioneta a4 = new Camioneta(Vehiculo.EMarca.BMW, "TRE321", ConsoleColor.Green); // Agrego 8 ítems (los últimos 2 no deberían poder agregarse ni el m1 repetido) y muestro estacionamiento += c1; estacionamiento += c2; estacionamiento += m1; estacionamiento += m1; estacionamiento += m2; estacionamiento += a1; estacionamiento += a2; estacionamiento += a3; estacionamiento += a4; Console.WriteLine(estacionamiento.ToString()); Console.WriteLine("<-----------PRESIONE UNA TECLA PARA CONTINUAR----------->"); Console.ReadKey(); Console.Clear(); // Quito 2 items y muestro estacionamiento -= c1; estacionamiento -= new Moto(Vehiculo.EMarca.Honda, "ASD913", ConsoleColor.Red); Console.WriteLine(estacionamiento.ToString()); Console.WriteLine("<-----------PRESIONE UNA TECLA PARA CONTINUAR----------->"); Console.ReadKey(); Console.Clear(); // Vuelvo a agregar c2 estacionamiento += c2; // Muestro solo Moto Console.WriteLine(Estacionamiento.Mostrar(estacionamiento, Estacionamiento.ETipo.Moto)); Console.WriteLine("<-----------PRESIONE UNA TECLA PARA CONTINUAR----------->"); Console.Beep(); Console.Clear(); // Muestro solo Automovil Console.WriteLine(Estacionamiento.Mostrar(estacionamiento, Estacionamiento.ETipo.Automovil)); Console.WriteLine("<-----------PRESIONE UNA TECLA PARA CONTINUAR----------->"); Console.ReadKey(); Console.Clear(); // Muestro solo Camioneta Console.WriteLine(Estacionamiento.Mostrar(estacionamiento, Estacionamiento.ETipo.Camioneta)); Console.WriteLine("<-------------PRESIONE UNA TECLA PARA SALIR------------->"); Console.ReadKey(); }
public string ObtenerListado() { List <Automovil> autos = new List <Automovil>(); try { SqlCommand cmd = new SqlCommand(); cmd.Connection = BaseDatos.conn; cmd.CommandText = "SELECT * FROM tblAutomovil"; BaseDatos.conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); Automovil auto = new Automovil(); while (dr.Read()) { auto = new Automovil(); auto.Id = Convert.ToInt32(dr["id"].ToString()); auto.Marca = dr["marca"].ToString(); auto.Modelo = dr["modelo"].ToString(); auto.Anio = dr["anio"].ToString(); auto.Descripcion = dr["descripcion"].ToString(); autos.Add(auto); } BaseDatos.conn.Close(); XmlDocument xmlDoc = new XmlDocument(); XPathNavigator nav = xmlDoc.CreateNavigator(); using (XmlWriter writer = nav.AppendChild()){ XmlSerializer ser = new XmlSerializer(typeof(List <Automovil>), new XmlRootAttribute("Autos")); ser.Serialize(writer, autos); } return(xmlDoc.InnerXml); } catch (Exception ex) { throw ex; } finally { BaseDatos.conn.Close(); } }