Example #1
0
        public async Task <bool> MoveFileAsync(BlobStorageData blobStorageData)
        {
            var sourceBlobReference = await GetBlockBlobReference(blobStorageData.ContainerName, blobStorageData.SourceFilePath, blobStorageData.BlobFileName);

            var destinationBlobReference = await GetBlockBlobReference(blobStorageData.ContainerName, blobStorageData.DestinationFilePath, blobStorageData.BlobFileName);

            await destinationBlobReference.StartCopyAsync(sourceBlobReference);

            return(await sourceBlobReference.DeleteIfExistsAsync());
        }
Example #2
0
        public async Task <ActionResult> CreateFromBlob(BlobStorageData blobStorageData)
        {
            var blobStorageFileInfo = blobStorageData.BlobStorageFileInfo;
            var cloudblob           = await _blobClient.ReadBlobAsStreamAsync(blobStorageFileInfo.Container, blobStorageFileInfo.FileName);

            using (var stream = await cloudblob.OpenReadAsync())
            {
                XmlSerializer xmlSerializer = new XmlSerializer(typeof(BatchsheetDto));
                var           batchSheetDto = (BatchsheetDto)xmlSerializer.Deserialize(stream);
                StreamReader  reader        = new StreamReader(stream);
                stream.Position = 0;
                var         fileContent = reader.ReadToEnd();
                XmlDocument xml         = new XmlDocument();
                xml.LoadXml(fileContent);
                if (xml.SelectNodes("//groupa").Count > 0)
                {
                    XmlNodeList            xnLeftDescList  = xml.SelectNodes("//leftdesc");
                    XmlNodeList            xnRightDescList = xml.SelectNodes("//rightdesc");
                    XmlNodeList            xnGrpACmtList   = xml.SelectNodes("//grpacmt/comment");
                    List <groupAItem>      list            = new List <groupAItem>();
                    batchsheetWorderGroupa groupa          = new batchsheetWorderGroupa()
                    {
                        groupAItems = list
                    };
                    foreach (XmlNode xn in xnLeftDescList)
                    {
                        string     test = xn.InnerText;
                        groupAItem item = new groupAItem
                        {
                            leftdesc = xn.InnerText
                        };
                        list.Add(item);
                    }
                    int i = 0;
                    foreach (var item in list)
                    {
                        item.rightdesc = xnRightDescList[i].InnerText;
                        item.grpacmt   = new batchsheetWorderGroupaGrpacmt()
                        {
                            comment = xnGrpACmtList[i].InnerText
                        };
                        i++;
                    }
                    batchSheetDto.worder.groupa = groupa;
                }

                var command = batchSheetDto.ToCreateCommand();
                await Mediator.Send(command);

                return(Ok());
            }
        }
Example #3
0
        public async Task <Stream> DownloadFileAsync(BlobStorageData blobStorageData)
        {
            var blobReference = await GetBlockBlobReference(blobStorageData.ContainerName, blobStorageData.SourceFilePath, blobStorageData.BlobFileName);

            if (await blobReference.ExistsAsync())
            {
                var ms = new MemoryStream();
                await blobReference.DownloadToStreamAsync(ms);

                return(ms);
            }
            else
            {
                return(null);
            }
        }
Example #4
0
        public async Task <bool> DeleteFileAsync(BlobStorageData blobStorageData)
        {
            var blobReference = await GetBlockBlobReference(blobStorageData.ContainerName, blobStorageData.SourceFilePath, blobStorageData.BlobFileName);

            return(await blobReference.DeleteIfExistsAsync());
        }
Example #5
0
        public async Task UploadFromByteArrayAsync(BlobStorageData blobStorageData)
        {
            var blobReference = await GetBlockBlobReference(blobStorageData.ContainerName, blobStorageData.SourceFilePath, blobStorageData.BlobFileName);

            await blobReference.UploadFromByteArrayAsync(blobStorageData.FileData, 0, blobStorageData.FileData.Length);
        }
Example #6
0
        public async Task UploadFileAsync(BlobStorageData blobStorageData)
        {
            var blobReference = await GetBlockBlobReference(blobStorageData.ContainerName, blobStorageData.SourceFilePath, blobStorageData.BlobFileName);

            await blobReference.UploadFromStreamAsync(blobStorageData.FileStream);
        }