コード例 #1
0
ファイル: TourAPI.cs プロジェクト: kswOok/Tour
 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);
     }
 }
コード例 #2
0
ファイル: TourAPI.cs プロジェクト: kswOok/Tour
        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
                }));
            }
        }