/// <summary>
        /// Método que se ejecuta al hacer click en el botón
        /// agregar proyecto en la vista
        /// </summary>
        public bool agregarProyecto()
        {
            if (obtenerInformacion())
            {
                try
                {
                    ///Se crea un nuevo proyecto con la información de la vista.
                    Entidad nuevoProyecto = FabricaEntidades.CrearProyectoConListas(_vista.NombreProyecto,
                                                                                    _vista.CodigoProyecto, _fechaIni, _fechaFin, _costo, propuesta.Descripcion,
                                                                                    "0", "En desarrollo", "", propuesta.Acuerdopago, int.Parse(propuesta.CodigoP),
                                                                                    int.Parse(propuesta.IdCompañia), 1, listaProgramadores, listaContactos);

                    ///Se crea un nuevo comando para agregar el proyecto en la base de datos y se ejecuta.
                    Comando <bool> comandoBool = FabricaComandos.ObtenerComandoAgregarProyecto(nuevoProyecto);
                    comandoBool.Ejecutar();
                    Comando <int> comandoIdProyecto = FabricaComandos.ObtenerComandoUltimoIdProyecto();
                    int           idProyecto        = comandoIdProyecto.Ejecutar();

                    nuevoProyecto.Id = idProyecto;

                    //Se crea un nuevo comando para agregar los empleados que trabajaran en el proyecto.
                    Comando <bool> comandoEmpleados = FabricaComandos.ObtenerComandoAgregarEmpleados(nuevoProyecto);
                    comandoEmpleados.Ejecutar();

                    //Se crea un nuevo comando para agregar los contactos en el proyecto.
                    Comando <bool> comandoContactos = FabricaComandos.ObtenerComandoAgregarContactos(nuevoProyecto);
                    comandoContactos.Ejecutar();
                    return(true);
                }
                catch (ExcepcionesTangerine.M7.ExceptionM7Tangerine ex)
                {
                    Logger.EscribirError(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name, ex);

                    _vista.alertaClase = RecursoPresentadorM7.alertaError;
                    _vista.alertaRol   = RecursoPresentadorM7.tipoAlerta;
                    _vista.alerta      = RecursoPresentadorM7.alertaHtml + ex.Message + ex.InnerException.Message
                                         + RecursoPresentadorM7.alertaHtmlFinal;
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }