private static string getAccessToken() { using (var db = new TouristDBEntities()) { var obj = db.dt_wx_token.SingleOrDefault(s => s.appid == APPID && s.type == "access_token"); if (obj == null) { obj = new dt_wx_token { appid = APPID, type = "access_token", refresh_time = DateTime.Now.Subtract(new TimeSpan(3, 0, 0)) }; db.dt_wx_token.Add(obj); } if (DateTime.Now.Subtract(obj.refresh_time.Value).TotalSeconds > 5400) { var request = (HttpWebRequest)WebRequest.Create( "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + APPID + "&secret=" + SECRET); var response = (HttpWebResponse)request.GetResponse(); using (var sr = new StreamReader(response.GetResponseStream())) { string responseString = sr.ReadToEnd(); var temp = JsonConvert.DeserializeObject <dynamic>(responseString); obj.value = temp.access_token; obj.refresh_time = DateTime.Now; } } db.SaveChanges(); return(obj.value); } }
public static string add_or_update_user(string openid, string unionid, string photo, int sex, string nickname, int age, string phone, string interest, float latitude, float longitude, float accuracy) { using (var db = new TouristDBEntities()) { dt_users user = null; if (openid != null && openid != "") { user = db.dt_users.FirstOrDefault(s => s.openid == openid); if (user == null) { user = new dt_users(); user.openid = openid; user.unionid = unionid; user.user_name = nickname; user.password = "******"; user.avatar = photo; user.sex = sex.ToString(); user.age = age; user.mobile = phone; user.interest = interest; user.latitude = latitude; user.longitude = longitude; user.accuracy = accuracy; user.GetAddress(); db.dt_users.Add(user); } else { if (unionid != null && unionid != "") { user.unionid = unionid; } if (photo != null && photo != "") { user.avatar = photo; } if (sex != -1) { user.sex = sex.ToString(); } if (nickname != null && nickname != "") { user.user_name = nickname; } if (age != -1) { user.age = age; } if (phone != null && phone != "") { user.mobile = phone; } if (interest != null && interest != "") { user.interest = interest; } if (latitude != -1) { user.latitude = latitude; } if (longitude != -1) { user.longitude = longitude; } if (accuracy != -1) { user.accuracy = accuracy; } user.GetAddress(); } db.SaveChanges(); } return(Obj2Json(new { user, result = 1 })); } }