public void Test()
        {
            string json = "{\"personaid\":12457, \"email\":\"[email protected]\", \"error\":\"valor\", \"nombre\":\"valor\"}";
            json = "{....}";
            Response.Write("el json es:" + json);
            User Usuario = new User();
            try
            {
                JObject myJson = JObject.Parse(json);
                Usuario.email = (string)myJson["email"];
                Usuario.userID = (decimal)myJson["personaid"];
                Response.Write("<br>El nombre es:" + Usuario.email);
                Response.Write("<br>El id es:" + Usuario.userID);
            }
            catch(Exception e)
            {
                Response.Write("token invalido code:" + e);
            }

            //var dict = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(json);
        }
 public User Update(int userid, User item)
 {
     user = UserRepositoryUpdate(userid, item);
     return user;
 }
 public User Add(User item)
 {
     user = UserRepositoryNew(item);
     return user;
 }
        // modificamos los datos de los usuarios [solo datos permitidos]
        public User UserRepositoryUpdate(int userid, User usuario)
        {
            user = new User();

                String _query = "exec  [sp_api_updateUser] "+userid+",'" + usuario.nombre + "','" +
                    usuario.apellidos + "','" + usuario.fechaNan.Year + "/" + usuario.fechaNan.Day + "/" + usuario.fechaNan.Month + "','" +
                    usuario.sexo + "','" + usuario.telefonos + "'," + usuario.location.estadoID + ",'" + usuario.password + "'";
                BaseDatos conexion = new BaseDatos("SQL");   //Creando objetos de la base de datos
                conexion.Conectar();
                conexion.CrearComando(_query); //Comando indica que quiero encontrar
                DbDataReader DRConexion = conexion.EjecutarConsulta();
                while (DRConexion.Read())
                {

                    user = new User
                    {
                        userID = DRConexion.GetDecimal(0),
                        nombre = DRConexion.GetString(1),
                        apellidos = DRConexion.GetString(2),
                        email = DRConexion.GetString(3),
                        password = DRConexion.GetString(4),
                        fechaNan = DRConexion.GetDateTime(5),
                        sexo = DRConexion.GetString(6),
                        telefonos = DRConexion.GetString(7),
                        status = DRConexion.GetInt32(8).ToString(),
                        location = new Location
                        {
                            estadoID = DRConexion.GetInt32(9),
                            estado = DRConexion.GetString(10)
                        }
                    };

                }
                conexion.Desconectar();

            return user;
        }
        // obtenemos los datos de un usuario en particular
        public void UserRepositoryGet(int id)
        {
            user = new User();
            try
            {
                String _query = "exec [sp_api_getUser] " + id;
                BaseDatos conexion = new BaseDatos("SQL");   //Creando objetos de la base de datos
                conexion.Conectar();
                conexion.CrearComando(_query); //Comando indica que quiero encontrar
                DbDataReader DRConexion = conexion.EjecutarConsulta();
                while (DRConexion.Read())
                {

                    user = new User
                    {
                        userID = DRConexion.GetDecimal(0),
                        nombre = DRConexion.GetString(1),
                        apellidos = DRConexion.GetString(2),
                        email = DRConexion.GetString(3),
                        password = DRConexion.GetString(4),
                        fechaNan = DRConexion.GetDateTime(5),
                        sexo = DRConexion.GetString(6),
                        telefonos = DRConexion.GetString(7),
                        status = DRConexion.GetInt32(8).ToString(),
                        location = new Location
                        {
                            estadoID = DRConexion.GetInt32(9),
                            estado = DRConexion.GetString(10)
                        }
                    };

                }
                conexion.Desconectar();
            }
            catch
            {

            }
        }
        private decimal validaAccessToken(string token)
        {
            string data_token = "";
            string origen = "_enia2013";
            token = token.Replace(origen, "");
            Encriptador enc = new Encriptador();
            data_token = enc.Desencriptar(token);
            bool mailValido = false;
            bool token_valido = false;
            decimal personaid = 0;

            StreamWriter writer = File.AppendText("D:\\electroniaLogs\\pruebasPostTokenDEcri.txt");
            writer.WriteLine("mi itme creado = " + data_token);
            writer.Close();

            User user = new User();
            try
            {
                JObject myJson = JObject.Parse(data_token);
                user.email = (string)myJson["email"];
                user.userID = decimal.Parse((string)myJson["personaid"]);
                user.nombre = (string)myJson["nombre"];
                if ((string)myJson["error"] == "0") { token_valido = true; }
            }
            catch (Exception e)
            {
                token_valido = false;
                writer = File.AppendText("D:\\electroniaLogs\\pruebasPostTokenException.txt");
                writer.WriteLine("mi itme creado = " + e + " -mitkn="+data_token);
                writer.Close();
            }

            if (token_valido)
            {
                // validamos el email
                String _query = "exec [sp_validaMail] '" + user.email + "'";
                BaseDatos conexion = new BaseDatos("SQL");   //Creando objetos de la base de datos
                conexion.Conectar();
                conexion.CrearComando(_query); //Comando indica que quiero encontrar
                DbDataReader DRConexion = conexion.EjecutarConsulta();
                while (DRConexion.Read())
                {

                    if (DRConexion.GetInt32(0) == 0) { mailValido = true; }

                }
                conexion.Desconectar();

                // si el mail es valido
                if (mailValido)
                {
                     //agregamos al item la persona id para que la procese
                    personaid = user.userID;
                }

            }

            //data_token = " {“personaid”:”valor”, “email”:”valor”, “error”:”valor”, “nombre”:”valor”}";
            /*
             *   List<Menu> menu = new List<Menu>();
            HttpClient client = new HttpClient();
            client.BaseAddress = new Uri("http://www.electronia.com.mx");

            // Add an Accept header for JSON format.
            client.DefaultRequestHeaders.Accept.Add(
                new MediaTypeWithQualityHeaderValue("application/json"));

            // Send an HTTP GET request. Blocking!
            HttpResponseMessage resp = client.GetAsync("/api/api/menu?type=" + typeMenu + "&clasificacion=" + clasificacion + "&aparato=" + aparato + "&marca=" + marca +
                "&modelo=" + modelo + "&estado=" + estado + "&tienda=" + tienda + "").Result;
            if (resp.IsSuccessStatusCode)
            {
                // Parse the response body. Blocking!
                var products = resp.Content.ReadAsAsync<IEnumerable<Menu>>().Result;
                //ViewData["listado"] = "";
                menu.Clear();
                foreach (var p in products)
                {
                    menu.Add(
                      new Menu
                      {
                          id = p.id,
                          tipo = typeMenu,
                          item = p.item,
                          cantidad = p.cantidad,
                          url = "http:electronia.mx/laurldefinir"

                      });
                    // + p.articuloID + "-" + p.identificador + "-" + p.clasificacion + "-" + p.aparato + "-" + p.precio;

                }
            }
            else
            {
                // Response.Write((int)resp.StatusCode + resp.ReasonPhrase);
            }

            return menu;
             */

            return personaid;
        }