private static void AgregarEmpleado(Facultad facultad) { try { string n = ConsolaHelper.PedirString("Nombre"); string a = ConsolaHelper.PedirString("Apellido"); int c = ConsolaHelper.PedirInt("Legajo"); string t = ConsolaHelper.PedirString("tipo empleado (D docente, B bedel, A directivo)"); DateTime f = ConsolaHelper.PedirFecha("Ingreso laboral"); Salario s = ConsolaHelper.PedirSalario(); string ap = string.Empty; if (t.ToUpper() == "B") { ap = ConsolaHelper.PedirString("Apodo"); } string m = string.Empty; if (t.ToUpper() == "D") { m = ConsolaHelper.PedirString("Materia"); } // acá si necesitamos enviarle los param al método para que sepa que tipo de obj crear facultad.AgregarEmpleado(n, a, c, f, s, t, ap, m); Console.WriteLine("Empleado agregado."); } catch (Exception ex) { // podemos usar recursión para que no salga del método hasta que no lo haga bien. Console.WriteLine("Error en uno de los datos ingresados. " + ex.Message + " Intente nuevamente. \n\n"); // podemos preguntarle si quiere hacerlo de nuevo. Depende de nuestro negocio. // if(quiereIntentarNuevamente) AgregarEmpleado(facultad); } }