internal static UserProfileField Factory(Guid contactId, Guid profileId, ProfileField profileField) { UserProfileField f = new UserProfileField(); f.Id = Guid.Empty; f.ProfileId = profileId; f.FieldId = profileField.Id; f.ContactId = contactId; f.Name = profileField.Name; return(f); }
public void Update(NameValueCollection collection) { foreach (string key in collection.AllKeys) { UserProfileField field = Fields.FirstOrDefault(x => GetPropName(x.Name).Equals(key, StringComparison.OrdinalIgnoreCase)); if (field != null) { field.Value = collection[key]; } } }
internal static UserProfile Factory(Profile ProfileDefinition) { UserProfile profile = new UserProfile() { Id = Guid.Empty, ProfileDefinition = ProfileDefinition }; foreach (ProfileField field in ProfileDefinition.Fields) { profile.Fields.Add(UserProfileField.Factory(Guid.Empty, ProfileDefinition.Id, field)); } return(profile); }
internal static UserProfileField Factory(Entity e) { UserProfileField f = new UserProfileField(); f.Id = e.GetAttributeValue <Guid>("appl_membershipprofileid"); f.ProfileId = e.GetAttributeValue <EntityReference>("appl_profiledefinitionid").Id; f.FieldId = e.GetAttributeValue <EntityReference>("appl_profilefieldid").Id; f.ContactId = e.GetAttributeValue <EntityReference>("appl_contactid").Id; f.Value = e.GetAttributeValue <string>("appl_value"); f.Name = e.GetAttributeValue <string>("appl_name"); // TODO: Fill out the rest of the fields if (e.Contains("appl_datetime")) { f.Date = e.GetAttributeValue <DateTime>("appl_datetime"); } if (e.Contains("appl_boolean")) { OptionSetValue v = e.GetAttributeValue <OptionSetValue>("appl_boolean"); switch (v.Value) { case (int)ProfileFieldBooleanValues.False: f.Boolean = false; break; case (int)ProfileFieldBooleanValues.True: f.Boolean = true; break; default: break; } } if (e.Contains("appl_decimalnumber")) { f.Decimal = e.GetAttributeValue <decimal>("appl_decimalnumber"); } if (e.Contains("appl_wholenumber")) { f.Number = e.GetAttributeValue <int>("appl_wholenumber"); } return(f); }
internal static UserProfile Factory(Guid ContactId, EntityCollection Profiles, Profile ProfileDefinition) { UserProfile profile = new UserProfile() { Id = ContactId, ProfileDefinition = ProfileDefinition }; foreach (Entity e in Profiles.Entities) { profile.Fields.Add(UserProfileField.Factory(e)); } foreach (ProfileField field in ProfileDefinition.Fields.Except(ProfileDefinition.Fields.Where(x => Profiles.Entities.Any(y => y.GetAttributeValue <EntityReference>("appl_profilefieldid").Id.Equals(x.Id))))) { profile.Fields.Add(UserProfileField.Factory(ContactId, ProfileDefinition.Id, field)); } return(profile); }