| MacroRuleMetadataContainer Class | 
            Class for registering 
MacroRuleMetadata to the system. Use 
RegisterMetadata(MacroRuleMetadata) or 
RegisterMetadata(DictionaryString, MacroRuleMetadata, MacroRuleMetadata) to speed up recalculation of contact groups 
            when registered macro rule is used in group condition.
            
Inheritance HierarchySystemObject  CMS.ContactManagementMacroRuleMetadataContainer  
Namespace: CMS.ContactManagementAssembly: CMS.ContactManagement (in CMS.ContactManagement.dll) Version: 11.0.0
Syntaxpublic static class MacroRuleMetadataContainer
The MacroRuleMetadataContainer type exposes the following members.
Methods
Remarks
            Registering 
MacroRuleMetadata can have two profound effects on speed of recalculation. 
            
            First is recalculating contacts in the database - normally, when a contact group is being rebuilt, system takes all contacts from database and runs the macro 
            condition on each of those. By registering a translator to a rule, the computation can be inverted, that means at first, a database query will be constructed 
            to select only those contacts that fit given macro condition.
            
            All of the macro rules must be able to translate themselves to database query to use this functionality.
            
            
            Second is recalculating the rule only when specified type of activity performs, for example when a 
PAGE_VISIT performs,
            there is no need to recalculate 
NEWSLETTER_OPEN macro rules. This can significantly reduce the count of contact groups
            that need rebuild on each request.
            
See Also