0

私は実際に私はJPGファイルをアップロードしているが、それは、「アプリケーション/ octactスチーム」タイプにアップロードコード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;} 

     } 

の下に使用して、私の紺碧ブロブへのファイルをアップロードしようとしています。それを解決する方法?

私のシナリオはファイルをアップロードする際に、アップロードするファイルを選択するためにWindowsエクスプローラが開きます。したがって、以下のようにパスを静的に指定すると、

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

アプリケーションには適用されません。さまざまな場所からファイルをアップロードするためにこのコードを変更するにはどうすればよいですか?

答えて

2

てみUploadFromStreamを使用し、私はあなたが設定を含めることで、「アプリケーション/ octact蒸気」コンテンツタイプの周りに配慮オプスに入れ懸念にあなたの答えを更新することができ

// 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

@sumanth、あなたのコードは素晴らしい作品です。ありがとう。 同様に、空白のBLOBストレージからファイルをダウンロードするにはどうすればいいですか?asp.netコアの空白のBLOBからファイルをダウンロードするコードブロックを共有してください – Joy

関連する問題