Example #1
0
        public CloudServiceReslutModel <string> Upload(string containerName, IFormFile file)
        {
            var result = new CloudServiceReslutModel <string>();

            using (var stream = new MemoryStream())
            {
                try
                {
                    if (file == null || file.Length <= 0)
                    {
                        throw new Exception($"檔案異常");
                    }

                    file.CopyTo(stream);
                    stream.Seek(0, SeekOrigin.Begin);

                    var fileName       = $"{Guid.NewGuid().ToString().ToLower()}{Path.GetExtension(file.FileName)}";
                    var storageAccount = CloudStorageAccount.Parse(_connectionString);
                    var blobClient     = storageAccount.CreateCloudBlobClient();

                    var blobContainer = blobClient.GetContainerReference(containerName.ToLower());
                    blobContainer.CreateIfNotExists();

                    var permision = new BlobContainerPermissions {
                        PublicAccess = BlobContainerPublicAccessType.Blob
                    };
                    blobContainer.SetPermissions(permision);

                    var blockBlob = blobContainer.GetBlockBlobReference(fileName);
                    blockBlob.UploadFromStream(stream);

                    result.Status  = true;
                    result.Message = $"操作成功";
                    result.Data    = blockBlob.Uri.AbsoluteUri;
                }
                catch (Exception ex)
                {
                    result.Status  = false;
                    result.Message = ex.Message;
                    result.Data    = default(string);
                }
            }

            return(result);
        }
Example #2
0
        public CloudServiceReslutModel Remove(string resourceUrl)
        {
            var result = new CloudServiceReslutModel();

            try
            {
                var blockBlob = new CloudBlockBlob(new Uri(resourceUrl));
                blockBlob.Delete();

                result.Status  = true;
                result.Message = $"操作成功";
            }
            catch (Exception ex)
            {
                result.Status  = false;
                result.Message = ex.Message;
            }

            return(result);
        }