protected virtual void AddContactFacetMember(string facetName, ID parentId) { var contractType = ContactFacetHelper.GetContractTypeForFacet(facetName); if (contractType == null) { return; } var members = contractType.GetMembers(); foreach (var member in members) { if (member.MemberType == MemberTypes.Field || member.MemberType == MemberTypes.Property) { var memberId = IDTableHelper.GenerateIdForFacetMember(member, parentId, Sitecore.Strategy.Contacts.DataProviders.TemplateIDs.ContactFacetMemberTemplate); AddContactFacetMemberValues(facetName, member.Name, memberId); } } }
protected virtual void AddChildIDsForContactFacetItem(IDList ids, ItemDefinition itemDefinition, CallContext context) { var facetName = IDTableHelper.GetFacetName(itemDefinition.ID); var contractType = ContactFacetHelper.GetContractTypeForFacet(facetName); if (contractType == null) { return; } var members = contractType.GetMembers(); foreach (var member in members) { if (member.MemberType == MemberTypes.Field || member.MemberType == MemberTypes.Property) { var id = IDTableHelper.GenerateIdForFacetMember(member, itemDefinition.ID, Sitecore.Strategy.Contacts.DataProviders.TemplateIDs.ContactFacetMemberTemplate); ids.Add(id); } } }