public static void Main(string[] args) { //creo el objeto que llamara los eventos Cerdo Piggy = new Cerdo(); //subscribo un metodo Piggy.Cambio += (int valor) => Console.WriteLine("The balance amount is {0}", valor); bool holder; do { Console.WriteLine("How much to deposit?"); //cambio el valor del Dinero, lo que activa el evento int holderDinero = 0; holder = Int32.TryParse(Console.ReadLine(), out holderDinero); Piggy.dinero = holderDinero; //subscribo el segundo metodo if (Piggy.dinero >= 500) { Piggy.Cambio += (int valor) => { Console.WriteLine("You have reached your savings goal¡ You have {0}", valor); Console.WriteLine("Exit"); Console.ReadKey(); } ; //no funciona quitar la subscribcion con el uso de lamdas Piggy.Cambio -= (int valor) => Console.WriteLine("The balance amount is {0}", valor); Piggy.maximo(); }; } while((Piggy.dinero < 500) & (holder)); }
public static void Main(string[] args) { //creo el objeto que llamara los eventos Cerdo Piggy = new Cerdo(); //subscribo un metodo Piggy.Cambio += cambioValor; //subscribo el segundo metodo bool holder; do { Console.WriteLine("How much to deposit?"); //cambio el valor del Dinero, lo que activa el evento int holderDinero = 0; holder = Int32.TryParse(Console.ReadLine(), out holderDinero); Piggy.dinero = holderDinero; if (Piggy.dinero >= 500) { Piggy.Cambio += maxValor; Piggy.Cambio -= cambioValor; Piggy.maximo(); }; } while((Piggy.dinero < 500) & (holder)); }