public void UploadMembers() { var list = _Repository.FindBy(null, 1, int.MaxValue); var accessToken = _commonService.GetContactsAccessToken(); var members = _contactsService.GetMembers(accessToken); var sbError = new StringBuilder(); foreach (var member in list) { if (string.IsNullOrWhiteSpace(member.Userid)) { continue; } try { var item = members.FirstOrDefault(x => x.Userid == member.Userid); var model = new Domain.Weixin.Model.Member(member.Userid, member.Name, member.WeixinId) { Department = new List <int>(member.Departments.Select(x => x.DepartmentId)), Position = member.Position, Gender = member.Gender, Mobile = member.Mobile, Email = member.Email, Status = member.Status, Avatar = member.Avatar, Enable = member.Status == 2 ? 0 : 1 }; if (item != null) { _contactsService.UpdateMember(accessToken, model); } else { _contactsService.CreateMember(accessToken, model); } } catch (Exception ex) { sbError.AppendLine(string.Format("{0} {1}", member.Userid, ex.Message)); } } if (sbError.Length > 0) { throw new Exception(sbError.ToString()); } }