private string GetWebFormMetadataRecordName(Entity entity)
        {
            string          recordName  = string.Empty;
            OptionSetValue  type        = entity.GetAttributeValue <OptionSetValue>("adx_type");
            EntityReference webFormstep = entity.GetAttributeValue <EntityReference>("adx_webformstep");

            if (type != null && webFormstep != null)
            {
                Enums.WebFormMetadata_Type typeEnum = (Enums.WebFormMetadata_Type)type.Value;
                string entityFormName = webFormstep.Name;
                string objectName     = string.Empty;

                switch (typeEnum)
                {
                case Enums.WebFormMetadata_Type.Attribute:
                {
                    Entity webFormAdditionalData = GetWebFormAdditionalData(webFormstep);
                    objectName = GetAttributeDisplayNameByLogicalName(webFormAdditionalData.GetAttributeValue <string>("adx_targetentitylogicalname"), entity.GetAttributeValue <string>("adx_attributelogicalname"));
                    recordName = string.Format("{0} - {1} - {2}", entityFormName, typeEnum.ToString(), objectName);
                    break;
                }

                case Enums.WebFormMetadata_Type.Section:
                    objectName = entity.GetAttributeValue <string>("adx_sectionname");
                    recordName = string.Format("{0} - {1} - {2}", entityFormName, typeEnum.ToString(), objectName);
                    break;

                case Enums.WebFormMetadata_Type.Tab:
                    objectName = entity.GetAttributeValue <string>("adx_tabname");
                    recordName = string.Format("{0} - {1} - {2}", entityFormName, typeEnum.ToString(), objectName);
                    break;

                case Enums.WebFormMetadata_Type.Subgrid:
                    objectName = entity.GetAttributeValue <string>("adx_subgrid_name");
                    recordName = string.Format("{0} - {1} - {2}", entityFormName, typeEnum.ToString(), objectName);
                    break;

                case Enums.WebFormMetadata_Type.Notes:
                    recordName = string.Format("{0} - {1}", entityFormName, typeEnum.ToString());
                    break;

                case Enums.WebFormMetadata_Type.Timeline:
                    recordName = string.Format("{0} - {1} - {2}", entityFormName, typeEnum.ToString(), "Timeline");
                    break;

                //case Enums.WebFormMetadata_Type.Purchase:
                //    recordName = string.Format("{0} - {1} - {2}", entityFormName, typeEnum.ToString(), "Timeline");
                //    break;
                default:
                    break;
                }
            }
            return(recordName);
        }
        private string GetWebFormMetadataRecordName(Entity entity)
        {
            string          recordName = string.Empty;
            OptionSetValue  type       = entity.GetAttributeValue <OptionSetValue>("adx_type");
            EntityReference webForm    = entity.GetAttributeValue <EntityReference>("adx_webformid");

            if (type != null && webForm != null)
            {
                //switch ((Enums.WebFormMetadata_Type)type)
                //{
                //    case    type.
                //    default:
                //        break;
                //}
                Enums.WebFormMetadata_Type typeEnum = (Enums.WebFormMetadata_Type)type.Value;
                string webFormName = webForm.Name;
                recordName = string.Format("{0} - {1}", webFormName, type.ToString());
            }
            return(recordName);
        }