private void ReadContentFoldersRecurive(ContentFolder folder, Action <ExportImportProgressInfo> progressCallback)
        {
            var result = _contentStorageProvider.Search(folder.Url, null);

            foreach (var blobFolder in result.Folders)
            {
                var contentFolder = new ContentFolder()
                {
                    Url = blobFolder.RelativeUrl
                };

                ReadContentFoldersRecurive(contentFolder, progressCallback);
                folder.Folders.Add(contentFolder);
            }

            foreach (var blobItem in result.Items)
            {
                var progressInfo = new ExportImportProgressInfo();
                progressInfo.Description = String.Format("Read {0}", blobItem.Url);
                progressCallback(progressInfo);

                var contentFile = new ContentFile
                {
                    Url = blobItem.RelativeUrl
                };
                using (var stream = _contentStorageProvider.OpenRead(blobItem.Url))
                {
                    contentFile.Data = stream.ReadFully();
                }
                folder.Files.Add(contentFile);
            }
        }
Example #2
0
        private void ReadContentFoldersRecurive(ContentFolder folder)
        {
            var result = _contentStorageProvider.Search(folder.Url, null);

            foreach (var blobFolder in result.Folders)
            {
                var contentFolder = new ContentFolder()
                {
                    Url = blobFolder.Url
                };
                ReadContentFoldersRecurive(contentFolder);
                folder.Folders.Add(contentFolder);
            }

            foreach (var blobItem in result.Items)
            {
                var contentFile = new ContentFile
                {
                    Url = blobItem.Url
                };
                using (var stream = _contentStorageProvider.OpenRead(blobItem.Url))
                {
                    contentFile.Data = stream.ReadFully();
                }
                folder.Files.Add(contentFile);
            }
        }
        private void ReadContentFoldersRecurive(ContentFolder folder)
        {
            var result = _contentStorageProvider.Search(folder.Url, null);
            foreach (var blobFolder in result.Folders)
            {
                //Do not export default theme its will distributed with code
                if (blobFolder.Url != "/Themes/default")
                {
                    var contentFolder = new ContentFolder()
                    {
                        Url = blobFolder.Url
                    };
                    ReadContentFoldersRecurive(contentFolder);
                    folder.Folders.Add(contentFolder);
                }
            }

            foreach (var blobItem in result.Items)
            {
                var contentFile = new ContentFile
                {
                    Url = blobItem.Url
                };
                using (var stream = _contentStorageProvider.OpenRead(blobItem.Url))
                {
                    contentFile.Data = stream.ReadFully();
                }
                folder.Files.Add(contentFile);
            }
        }
        private void ReadContentFoldersRecurive(ContentFolder folder, Action<ExportImportProgressInfo> progressCallback)
        {
            var result = _contentStorageProvider.Search(folder.Url, null);
            foreach (var blobFolder in result.Folders)
            {
                //Do not export default theme its will distributed with code
                if (blobFolder.Url != "/Themes/default")
                {
                    var contentFolder = new ContentFolder()
                    {
                        Url = blobFolder.Url
                    };
                
                    ReadContentFoldersRecurive(contentFolder, progressCallback);
                    folder.Folders.Add(contentFolder);
                }
            }

            foreach (var blobItem in result.Items)
            {
                var progressInfo = new ExportImportProgressInfo();
                progressInfo.Description = String.Format("Read {0}", blobItem.Url);
                progressCallback(progressInfo);

                var contentFile = new ContentFile
                {
                    Url = blobItem.Url
                };
                using (var stream = _contentStorageProvider.OpenRead(blobItem.Url))
                {
                    contentFile.Data = stream.ReadFully();
                }
                folder.Files.Add(contentFile);
            }
        }