void WebClient_GetProfile_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) { TruelifeEventArgs eventArg = new TruelifeEventArgs(); eventArg.Code = 0; eventArg.Description = "error"; try { if (e.Error != null) { throw new Exception(e.Error.Message); } //---------- XDocument xdoc = XDocument.Parse(e.Result, LoadOptions.None); if (xdoc.Root == null) { throw new Exception("Root is null"); } if (xdoc.Root.Element("header") == null) { throw new Exception("header is null"); } if (xdoc.Root.Element("header").Element("code") == null) { throw new Exception("header/code is null"); } if (xdoc.Root.Element("header").Element("description") == null) { throw new Exception("header/description is null"); } //---------- var code = xdoc.Root.Element("header").Element("code"); eventArg.Code = XmlValueParser.ParseInteger(code); var desc = xdoc.Root.Element("header").Element("description"); eventArg.Description = XmlValueParser.ParseString(desc); if (eventArg.Code == 400) { eventArg.ErrorMessageForUser = "******"; eventArg.ErrorMessageForDeveloper = "error code is " + eventArg.Code + " , " + desc; eventArg.IsError = true; ProfileData = null; } else if (eventArg.Code != 200) { eventArg.ErrorMessageForUser = "******" + eventArg.Code + " , " + desc; eventArg.ErrorMessageForDeveloper = "error code is " + eventArg.Code + " , " + desc; eventArg.IsError = true; ProfileData = null; } else { if (xdoc.Root.Element("profile") == null) { throw new Exception("profile is null"); } //parse ProfileData.UserID = XmlValueParser.ParseInteger(xdoc.Root.Element("profile").Element("uid")); ProfileData.Email = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("email")); ProfileData.FirstName = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("first_name")); ProfileData.LastName = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("last_name")); ProfileData.Birthday = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("birthday")); ProfileData.Gender = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("gender")); ProfileData.DisplayName = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("display_name")); ProfileData.EmailContact = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("email_contact")); ProfileData.MobileContact = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("mobile_contact")); ProfileData.Mobile = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("mobile")); //---------- eventArg.IsError = false; } } catch (Exception ex) { eventArg.ErrorMessageForUser = "******"; eventArg.ErrorMessageForDeveloper = "Error : Truelife - GetProfile ; " + ex.Message; eventArg.IsError = true; ProfileData = null; } //----- GetProfileCompleted(eventArg); }
//Event void WebClient_LoginEmail_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) { TruelifeEventArgs eventArg = new TruelifeEventArgs(); eventArg.Code = 0; eventArg.Description = "error"; try { if (e.Error != null) { throw new Exception(e.Error.Message); } //---------- XDocument xdoc = XDocument.Parse(e.Result, LoadOptions.None); if (xdoc.Root == null) { throw new Exception("Root is null"); } if (xdoc.Root.Element("header") == null) { throw new Exception("header is null"); } if (xdoc.Root.Element("header").Element("code") == null) { throw new Exception("header/code is null"); } if (xdoc.Root.Element("header").Element("description") == null) { throw new Exception("header/description is null"); } //---------- var code = xdoc.Root.Element("header").Element("code"); eventArg.Code = XmlValueParser.ParseInteger(code); var desc = xdoc.Root.Element("header").Element("description"); eventArg.Description = XmlValueParser.ParseString(desc); if (eventArg.Code != 200) { eventArg.ErrorMessageForUser = eventArg.Description; eventArg.ErrorMessageForDeveloper = eventArg.Description; eventArg.IsError = true; } else { if (xdoc.Root.Element("profile") == null) { throw new Exception("profile is null"); } //---------- LoginItem tmp_item = new LoginItem(); //parse //tmp_item.blog_id = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("blog_id")); tmp_item.sso_access_token = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("sso_access_token")); tmp_item.sso_expires = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("sso_expires")); //tmp_item.username = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("username")); //tmp_item.password = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("password")); tmp_item.email = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("email")); tmp_item.name = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("name")); tmp_item.birthday = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("birthday")); tmp_item.gender = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("gender")); tmp_item.role_id = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("role_id")); tmp_item.employee_id = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("employee_id")); tmp_item.sso_uid = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("sso_uid")); tmp_item.verify_status = XmlValueParser.ParseString(xdoc.Root.Element("profile").Element("verify_status")); //---------- LoginData = tmp_item; LoginData.username = username; //LoginData.password = password; LoginData.password = "";//not need to save password eventArg.IsError = false; SaveLoginData(); } } catch (Exception ex) { eventArg.ErrorMessageForUser = "******"; eventArg.ErrorMessageForDeveloper = "Error : Truelife - LoginWithEmail ; " + ex.Message; eventArg.IsError = true; } //----- //LoginWithEmailCompleted(eventArg); LoginAllCompleted(eventArg); }