public override Type GetDataType(T ruleContext)
        {
            if (ruleContext == null)
            {
                Log.Error($"SegmentationContactFacetMemberValueCondition<T> - {nameof(GetDataType)} - ruleContext cannot be null. Stack: {Environment.StackTrace}", this);
                return(null);
            }
            Database db;

            if (ruleContext.Item == null)
            {
                Log.Error($"SegmentationContactFacetMemberValueCondition<T> - {nameof(GetDataType)} - ruleContext.Item is null the database will be set to the ContentDatabase by default: '{Sitecore.Context.ContentDatabase}'. Stack: {Environment.StackTrace}", this);
                db = Sitecore.Context.ContentDatabase;
            }
            else if (ruleContext.Item.Database == null)
            {
                Log.Error($"SegmentationContactFacetMemberValueCondition<T> - {nameof(GetDataType)} - ruleContext.Item.Database is null the database will be set to the ContentDatabase by default: '{Sitecore.Context.ContentDatabase}'. Stack: {Environment.StackTrace}", this);
                db = Sitecore.Context.ContentDatabase;
            }
            else
            {
                db = ruleContext.Item.Database;
            }
            var type = ContactFacetItemHelper.GetFacetMemberValueType(db, this.ContactFacetId, this.ContactFacetMemberId);

            return(type);
        }
        public override Type GetDataType(T ruleContext)
        {
            var type = ContactFacetItemHelper.GetFacetMemberValueType(ruleContext.Item.Database, this.ContactFacetId, this.ContactFacetMemberId);

            return(type);
        }