Exemplo n.º 1
0
        //Crear la interface IGuardarXML { bool SerializarXML(); }. Implementarla en la clase Deposito.
        //La instancia de tipo Deposito tendrá, al menos, un objeto de tipo Producto, otro de tipo ProdImpuesto,
        //otro de tipo ProdExport y otro de tipo ProdVendido) y generar una serialización XML del depósito.
        //Modificando lo que crea conveniente para poder serializar todos los atributos de todos los objetos intervinientes,
        //guardando en el archivo archivo.xml.
        private void button7_Click(object sender, EventArgs e)
        {
            //serializar
            Deposito d = new Deposito();

            d.Add(new Producto("pera", 2));
            d.Add(new ProdImpuesto("cereza", 150, 600.33));
            d.Add(new ProdExport(new ProdImpuesto("banana", 16, 266), "Argentina"));
            d.Add(new ProdVendido(new ProdExport(new ProdImpuesto("maracuyá", 20, 666), "Brazil"), "Cliente Juan"));
            if (d.SerializarXML())
            {
                MessageBox.Show("Serializado OK");
                MessageBox.Show("Se encuentra en el escritorio");
            }
            else
            {
                MessageBox.Show("NO Serializado");
            }
        }
Exemplo n.º 2
0
        //Crear la clase Deposito que contenga nombre(protected; string) y productos(protected; lista genérica de tipo
        //Producto), como atributos, y como método Add(agrega un elemento a la lista).
        //a.Crear dos objetos de tipo Deposito(de 3 elementos de capacidad máxima, si la supera, lanza una excepción propia).
        //La clase Producto tiene dos atributos: Nombre y Stock.
        //b.Se debe poder sumar los dos depósitos(con la sobrecarga de un operador en la clase Depósito) retornando
        //una nueva lista con la suma de los Productos, (recordar que, si un producto está en las dos listas, se debe sumar
        //el stock y no agregar dos veces al mismo producto).
        //c.Crear el “DepositoUno” con: 2 naranjas y 4 peras y el “DepositoDos” con: 2 peras, 2 manzanas, 5 naranjas y
        //3 cerezas, mostrar el listado de productos resultantes con el método toString(), y el mensaje de la
        //excepción propia(si se produjo).
        private void button4_Click(object sender, EventArgs e)
        {
            Deposito DepositoUno = new Deposito();
            Deposito DepositoDos = new Deposito();

            DepositoUno.Add(new Producto("naranja", 2));
            DepositoUno.Add(new Producto("pera", 4));

            DepositoDos.Add(new Producto("pera", 2));
            DepositoDos.Add(new Producto("manzana", 2));
            DepositoDos.Add(new Producto("naranja", 5));
            DepositoDos.Add(new Producto("cereza", 3));

            List <Producto> lista   = DepositoUno + DepositoDos; // reemplazar por la suma de los dos depositos!!!
            string          mensaje = "";

            foreach (Producto item in lista)
            {
                mensaje += item.ToString();
            }

            MessageBox.Show(mensaje);
        }