public async Task <Oauth2MemberfoResponse> GetWeixinInfoAsync(string access_token, string openId) { var infoReq = new Oauth2MemberInfoRequest(); infoReq.access_token = access_token; infoReq.openid = openId; var infoResp = new Oauth2MemberfoResponse(); try { infoResp = await _clientService.ExecuteAsync(infoReq, RequestStringDataTypes.Json); } //这个异常一般可以忽略,这里是为了不影响程序正常运行 catch (Exception e) { _logger.LogError("执行GetWeixinInfo异常:{0}", e.Message); } return(infoResp); }
protected virtual bool Register(Oauth2MemberfoResponse wxInfo, int inviteCode) { bool registerResult = false; var member = new MemberModel { WeixinName = wxInfo.NickName, HeadImgUrl = wxInfo.HeadImgUrl, Sex = wxInfo.Sex, OpenID = wxInfo.OpenId, UnionID = wxInfo.UnionID ?? wxInfo.OpenId, Province = wxInfo.Province, City = wxInfo.City, LastLoginDate = System.DateTime.Now }; using (var trans = _db.Database.BeginTransaction()) { try { // member.Password = _pwdHasher.HashPassword(member, "123456"); int result = _memberManager.CreateMemberAsync(member, inviteCode); if (result > 0) { //var sign = _commonContext.SignInAsync(new MemberModel //{ // OpenID = member.OpenID, // WeixinName = member.WeixinName, // HeadImgUrl = member.HeadImgUrl, // Sex = member.Sex //}, 24); } trans.Commit(); _logger.LogInformation("用户注册成功:{0}", member.WeixinName); registerResult = true; } catch (System.Exception e) { trans.Rollback(); _logger.LogInformation("用户注册失败:{0},原因是:{1}", member.WeixinName, e.StackTrace); } } return(registerResult); }