/// <summary>
        /// Add selected entities to folder.
        /// </summary>
        /// <param name="sourceSchemaName"></param>
        /// <param name="destinationSchemaName"></param>
        /// <param name="folderId"></param>
        /// <param name="filtersConfig"></param>
        public ConfigurationServiceResponse IncludeEntitiesInFolder(string sourceSchemaName, string destinationSchemaName,
                                                                    string entityColumnNameInFolderEntity, Guid folderId, string filtersConfig)
        {
            destinationSchemaName.CheckArgumentNullOrEmpty(nameof(destinationSchemaName));
            sourceSchemaName.CheckArgumentNullOrEmpty(nameof(sourceSchemaName));
            entityColumnNameInFolderEntity.CheckArgumentNullOrEmpty(nameof(entityColumnNameInFolderEntity));
            folderId.CheckArgumentEmpty(nameof(folderId));
            filtersConfig.CheckArgumentNullOrEmpty(nameof(filtersConfig));

            var response            = new ConfigurationServiceResponse();
            var primaryColumnValues = GridUtilitiesHandler.GetPrimaryColumnValuesFromFilters(sourceSchemaName, filtersConfig);
            var includeParameters   = new FolderActionParameters()
            {
                EntitySchemaName = destinationSchemaName,
                EntityColumnNameInFolderEntity = entityColumnNameInFolderEntity,
                FolderId = folderId
            };

            var handler = CreateIncludeExecutor(includeParameters);

            response.RowsAffected = handler.Execute(primaryColumnValues);
            return(response);
        }
 private IIncludeEntitiesInFolderExecutor CreateIncludeExecutor(FolderActionParameters parameters) =>
 ClassFactory.Get <IIncludeEntitiesInFolderExecutor>(UserConnectionConstructorArg, new ConstructorArgument("parameters", parameters));