public ActionResult UpdateFacet([System.Web.Http.FromBody] IdentificationPayload data) { try { service.UpdateFacet(data); } catch (Exception ex) { Log.Error($"Error while running IdentificationService API", ex, this); return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, ex.Message)); } return(new HttpStatusCodeResult(HttpStatusCode.OK)); }
protected void UpdateEmail(IdentificationPayload data, Dictionary <string, Facet> facets) { EmailAddressList emails; if (facets.ContainsKey(EmailAddressList.DefaultFacetKey)) { emails = (EmailAddressList)facets[EmailAddressList.DefaultFacetKey]; emails.PreferredEmail = new EmailAddress(data.Email, true); } else { emails = new EmailAddressList(new EmailAddress(data.Email, true), Wellknown.PreferredEmailKey); facets.Add(EmailAddressList.DefaultFacetKey, emails); } }
public void UpdateFacet([NotNull] IdentificationPayload data) { var trackerContact = ContactExtensions.GetCurrentTrackerContact(); Assert.IsNotNull(trackerContact, "Current contact is null"); var facets = trackerContact.GetXConnectFacets(); UpdateName(data, facets); UpdateEmail(data, facets); Tracker.Current.Session.IdentifyAs(Wellknown.EMAIL_IDENT_SOURCE, data.Email); trackerContact.UpdateXConnectFacets(facets); }
protected void UpdateName(IdentificationPayload data, Dictionary <string, Facet> facets) { PersonalInformation personalInfo; if (facets.ContainsKey(PersonalInformation.DefaultFacetKey)) { personalInfo = (PersonalInformation)facets[PersonalInformation.DefaultFacetKey]; personalInfo.FirstName = data.FirstName; personalInfo.LastName = data.LastName; } else { personalInfo = new PersonalInformation() { FirstName = data.FirstName, LastName = data.LastName, }; facets.Add(PersonalInformation.DefaultFacetKey, personalInfo); } }