0

나는Asp.Net Core의 푸른 하늘에 파일을 업로드하는 방법은 무엇입니까?

public async void UploadSync(IEnumerable<IFormFile> files, string path) 
     { 
      string MyPath = path.Replace("https://browsercontent.blob.core.windows.net/blob1/", ""); 

      try 
      { 
       foreach (var file in files) 
       { 
        var newBlob = container.GetBlockBlobReference(MyPath); 
        await newBlob.UploadFromFileAsync(@"C:\Users\joy\Downloads\" + file.FileName); 

       } 
      } 
      catch (Exception ex) 
      { throw ex;} 

     } 

는 사실 내가 JPG 파일을 업로드해야하지만, 그것은 "응용 프로그램/octact 증기"유형에 업로드 코드 아래 사용하여 내 푸른 BLOB으로의 파일을 업로드하기 위해 노력했다. 그것을 해결하는 방법?

내 시나리오는 파일을 업로드하는 동안 업로드 할 파일을 선택하기 위해 Windows 탐색기가 열립니다. 따라서 아래 경로를 정적으로 제공하면

newBlob.UploadFromFileAsync (@ "C : \ Users \ joy \ Downloads \"+ file.FileName);

응용 프로그램에는 적용되지 않습니다. 이 코드를 변경하여 다양한 위치에서 파일을 업로드하는 방법?

답변

2

봅니다 UploadFromStream를 사용하고 저를 당신은 설정을 포함하여 "응용 프로그램/octact 스팀"콘텐츠 형식 주위 고려 OPS로 촬영 한 문제에 대한 답을 업데이트 할 수

// Retrieve storage account from connection string. 
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
    CloudConfigurationManager.GetSetting("StorageConnectionString")); 

// Create the blob client. 
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient(); 

// Retrieve reference to a previously created container. 
CloudBlobContainer container = blobClient.GetContainerReference("mycontainer"); 

// Retrieve reference to a blob named "myblob". 
CloudBlockBlob blockBlob = container.GetBlockBlobReference("myblob"); 

// Create or overwrite the "myblob" blob with contents from a local file. 
using (var fileStream = System.IO.File.OpenRead(@"path\myfile")) 
{ 
    blockBlob.UploadFromStream(fileStream); 
} 

https://docs.microsoft.com/en-us/azure/storage/blobs/storage-dotnet-how-to-use-blobs

+0

결과를 알려하기 blockblob.Properties.ContentType 속성 – Oliver

+0

@ sumumh, 당신의 코드는 훌륭하게 작동합니다. 감사. 마찬가지로 하늘빛 블로 브 스토리지에서 파일을 다운로드 할 수 있습니까? asp.net 코어의 하늘색 블로 브에서 파일을 다운로드하기위한 코드 블록을 공유 할 수 있습니까? – Joy

관련 문제