public async Task<UtilsJson.AInstitucion> getInstitutionId(long id)
 {
     UtilsJson.AInstitucion json = new UtilsJson.AInstitucion();
     Expression<Func<Persona, bool>> query = (u => u.id == id && u.estado == true);
     List<Persona> lstRepre = _repositorio.Filter<Persona>(query);
     if (lstRepre != null)
     {
         if (lstRepre.Count > 0)
         {
             long id_institucion = lstRepre[0].id;
             Expression<Func<InstitucionSector, bool>> query1 = (u => u.institucion.id == id_institucion);
             Expression<Func<InstitucionTipoBiotec, bool>> query2 = (u => u.institucion.id == id_institucion);
             json = convertToInstitucion(lstRepre[0], _repositorio.Filter<InstitucionSector>(query1), _repositorio.Filter<InstitucionTipoBiotec>(query2), false);
         }
     }
     return json;
 }
        /// <summary>
        /// Convierte un objeto tipo institucion a json.
        /// </summary>
        /// <param name=EnumtipoUsuario.institucion>The institucion.</param>
        /// <param name="lst_sector">The lst_sector.</param>
        /// <param name="lst_tipoB">The lst_tipo b.</param>
        /// <returns>UtilsJson.AInstitucion.</returns>
        private static UtilsJson.AInstitucion convertToInstitucion(Persona usuario, List<InstitucionSector> lst_sector, List<InstitucionTipoBiotec> lst_tipoB, bool auth)
        {
            UtilsJson.AInstitucion aux = null;

            if (usuario != null)
            {
                if (usuario.institucion != null)
                {
                    long id_institucion = usuario.institucion.id;
                    string descripcion = usuario.institucion.descripcion;
                    UtilsJson.AMunicipio municipio = convertToAMunicipio(usuario.institucion.municipio);
                    string correo_electronico = usuario.institucion.correo_electronico;
                    string direccion_postal = usuario.institucion.direccion_postal;
                    string facebook = usuario.institucion.facebook;
                    string fax = usuario.institucion.fax;
                    string impacto = usuario.institucion.impacto;
                    string latitud = usuario.institucion.latitud;
                    string linkedin = usuario.institucion.linkedin;
                    string longitud = usuario.institucion.longitud;
                    string naturaleza = usuario.institucion.naturaleza;
                    string nombre = usuario.institucion.nombre;
                    string pagina_web = usuario.institucion.pagina_web;
                    int tamano = usuario.institucion.tamano;
                    string telefono = usuario.institucion.telefono;
                    string tipo_institucion = usuario.institucion.tipo_institucion;
                    string twitter = usuario.institucion.twitter;
                    string constitucion = usuario.institucion.constitucion;
                    string imagen_base64 = (usuario.institucion.banner != null) ? usuario.institucion.banner.imagenBase64 : "";
                    string fecha_creacion = usuario.institucion.fecha_creacion.ToString();
                    long visitas = usuario.institucion.visitas;
                    UtilsJson.ALogueo logueo = (auth) ? convertToALogueoInstitucion(usuario.institucion.logueo) : null;
                    UtilsJson.APersona representante = convertToAPersona(usuario);
                    UtilsJson.ASector[] sectores = convertToASector(lst_sector);
                    UtilsJson.ATipoBiotecnologia[] Tipos_Biotecnologia = convertToATipoBiotecnologia(lst_tipoB);
                    aux = new UtilsJson.AInstitucion
                    {
                        id = id_institucion,
                        descripcion = descripcion,
                        municipio = municipio,
                        correo_electronico = correo_electronico,
                        direccion_postal = direccion_postal,
                        facebook = facebook,
                        fax = fax,
                        impacto = impacto,
                        latitud = latitud,
                        linkedin = linkedin,
                        longitud = longitud,
                        naturaleza = naturaleza,
                        nombre = nombre,
                        pagina_web = pagina_web,
                        tamano = tamano,
                        telefono = telefono,
                        tipo_institucion = tipo_institucion,
                        twitter = twitter,
                        constitucion = constitucion,
                        imagen_base64 = imagen_base64,
                        fecha_creacion = fecha_creacion,
                        visitas = visitas,
                        logueo = logueo,
                        representante = representante,
                        sectores = sectores,
                        Tipos_Biotecnologia = Tipos_Biotecnologia
                    };

                }

                return aux;
            }
            return null;
        }
 public UtilsJson.AInstitucion getUsuarioIdAuth([FromBody] UtilsJson.AToken token)
 {
     UtilsJson.AInstitucion json = new UtilsJson.AInstitucion();
     if (token != null)
     {
         if (!string.IsNullOrWhiteSpace(token.token_string))
         {
             if (AutenticacionToken.validateToken(token.token_string) == 1)
             {
                 long id_usuario = token.user_id;
                 Expression<Func<Persona, bool>> query = (u => u.institucion.id == id_usuario && u.institucion.estado == true);
                 Persona usuario = _repositorio.Get<Persona>(query);
                 if (usuario != null)
                 {
                     if (usuario.institucion != null)
                     {
                         long id_institucion = usuario.id;
                         Expression<Func<InstitucionSector, bool>> query1 = (u => u.institucion.id == id_institucion);
                         Expression<Func<InstitucionTipoBiotec, bool>> query2 = (u => u.institucion.id == id_institucion);
                         List<InstitucionSector> listSectores = _repositorio.Filter<InstitucionSector>(query1);
                         List<InstitucionTipoBiotec> listBiotec = _repositorio.Filter<InstitucionTipoBiotec>(query2);
                         json = convertToInstitucion(usuario, listSectores, listBiotec, true);
                     }
                 }
             }
         }
     }
     return json;
 }