尤物精品_gay小说高h_成人免费va视频_涩涩18网站

Azure Storage 系列(三)Blob 參數設置說明,azure blob 性能-ESG跨境

Azure Storage 系列(三)Blob 參數設置說明,azure blob 性能

來源網絡
來源網絡
2022-05-31
點贊icon 0
查看icon 844

Azure Storage 系列(三)Blob 參數設置說明,azure blob 性能Azure Storage 系列(三)Blob 參數設置說明一,引言上一篇將Azure Blob存儲的時候,有使用到一個.NET Core Web項目,通過代碼的方式進行操作Azure Blob的數據,接著上一篇的內容,今天繼續看一......

Azure Storage 系列(三)Blob 參數設置說明,azure blob 性能




Azure Storage 系列(三)Blob 參數設置說明

一,引言

上一篇將Azure Blob存儲的時候,有使用到一個.NET Core Web項目,通過代碼的方式進行操作Azure Blob的數據,接著上一篇的內容,今天繼續看一下代碼,具體看看Azure.Storage中的類,方法。

我是分割線

Azure Blob Storage存儲系列:

1,Azure Storage系列(一)入門簡介

2,Azure Storage系列(二).NET Core Web項目中操作Blob存儲

3,Azure Storage系列(三)Blob參數設置說明

4,Azure Storage系列(四)在.Net上使用Table Storage

二,正文

1,配置Blob連接字符串

{

Logging: {

  LogLevel: {

   Default: Information,

   Microsoft: Warning,

   Microsoft.Hosting.Lifetime: Information

  }

},

AllowedHosts: *,

AzureBlobStorageConnectionString: DefaultEndpointsProtocol=https;AccountName=cnbateblogaccount;AccountKey=FU01h022mn1JjONp+ta0DAXOO7ThK3diY891n9nycsTLGZF83nJpGVCVFhGOfV0wndOOQ==;EndpointSuffix=core.windows.net

}

”AzureBlobStorageConnectionString“向此Azure存儲帳戶提出請求時,使用訪問密鑰對應用程序進行身份驗證。請采用安全的方式(例如使用Azure Key Vault)保存訪問密鑰,不要共享密鑰。建議定期重新生成訪問密鑰。

Azure會向我們提供兩個訪問密鑰,這樣,當重新生成其中一個時,可以使用另一個保持連接。

2,注入BlobServiceClient,BlobService

services.AddSingleton(x=newBlobServiceClient(Configuration.GetValuestring(AzureBlobStorageConnectionString)));

初始化創建一個BlobService類,并且在將appsettings中的key叫”AzureBlobStorageConnection“的鏈接字符串的值當作參數放到構造函數中

BlobService

services.AddSingletonIBlobSergvice,BlobService();

3,BlobService方法

3.1,獲取Blog信息

#region 01,獲取Blob,根據blob名稱+async TaskBlobInfo GetBlobAsync(string name)

/// summary

/// 獲取Blob,根據blob名稱

/// /summary

/// param name=nameblob名稱/param

/// returns/returns

public async TaskAzure.Storage.Models.BlobInfo GetBlobAsync(string name)

{

var containerClient = _blobServiceClient.GetBlobContainerClient(picturecontainer);

var blobClient = containerClient.GetBlobClient(name);

var blobDownLoadInfo = await blobClient.DownloadAsync();

return new Azure.Storage.Models.BlobInfo(blobDownLoadInfo.Value.Content, blobDownLoadInfo.Value.ContentType);

}

#endregion

獲取Blob存儲信息具體實現方法,

1,首先我們可以看到先通過picturecontainer名稱獲取到ContainerClient,再通過需要的Blob名稱獲取到BlobClient

2,其次,通過異步的方法“DownloadAsync”進行下載Blob對象,其中包括Blob元數據,屬性等信息

3,最后,我們將返回創建BlobInfo對象,在其構造函數中傳入返回值的Content和ContentType

3.2,獲取Blog信息

#region 02,獲取所有Blob名稱+async TaskIEnumerablestring ListBlobsNameAsync()

/// summary

/// 獲取所有Blob名稱

/// /summary

/// returns/returns

public async TaskIEnumerablestring ListBlobsNameAsync()

{

  var containerClient = _blobServiceClient.GetBlobContainerClient(picturecontainer);

  var items = new Liststring();

  await foreach (var blobItem in containerClient.GetBlobsAsync())

  {

    items.Add(blobItem.Name);

  }

  return items;

}

#endregion

獲取Blob存儲信息具體實現方法,

1,首先我們可以看到先通過picturecontainer名稱獲取到ContainerClient,再通過需要的Blob名稱獲取到BlobClient

2,其次,通過異步foreach調用ContainerClient的GetBlobsAsync“的方法,當前方法有多個默認參數

BlobTraits(Blob特性):默認獲取包含所有特性的標識

BlobStates(Blob狀態):指定應包含所有狀態的Blob的標志

prefix(前綴):指定一個字符串,該字符串對結果進行過濾以僅返回其名稱以指定的開頭的Blob前綴

cancellationToken:傳播有關應取消操作的通知

3,最后,將每一項的Blob的名稱添加到集合中。

3.3,根據文件路徑和文件名稱上傳文件

#region 03,上傳文件,根據文件路徑和文件名稱+async Task UploadFileBlobAsync(string filePath, string filename)

/// summary

/// 上傳文件,根據文件路徑和文件名稱

/// /summary

/// param name=filePath文件路徑/param

/// param name=filename文件名稱/param

/// returns/returns

public async Task UploadFileBlobAsync(string filePath, string filename)

{

  var containerClient = _blobServiceClient.GetBlobContainerClient(picturecontainer);

  var blobClient = containerClient.GetBlobClient(filename);

  await blobClient.UploadAsync(filePath, new BlobHttpHeaders { ContentType = filePath.GetContentType() });

}

#endregion

上傳Blob數據具體實現方法

1,首先我們可以看到先通過picturecontainer名稱獲取到ContainerClient,再通過需要的Blob名稱獲取到BlobClient

2,最后通過異步上傳文件,此時需要指定文件的路徑,以及在BlobHttpHeaders中指定文件內容的ContentType

3.4,上傳流

#region 04,上傳文件流,根據文件內容和文件名稱+async Task UploadContentBlobAsync(string content, string filename)

/// summary

/// 上傳文件流,根據文件內容和文件名稱

/// /summary

/// param name=content文件內容/param

/// param name=filename文件名稱/param

/// returns/returns

public async Task UploadContentBlobAsync(string content, string filename)

{

var containerClient = _blobServiceClient.GetBlobContainerClient(picturecontainer);

var blobClient = containerClient.GetBlobClient(filename);

var bytes = Encoding.UTF8.GetBytes(content);

await using var memoryStream = new MemoryStream(bytes);

await blobClient.UploadAsync(memoryStream, new BlobHttpHeaders() { ContentType = filename.GetContentType() });

}

#endregion

上傳Blob數據具體實現方法

1,首先我們可以看到先通過picturecontainer名稱獲取到ContainerClient,再通過需要的Blob名稱獲取到BlobClient

2,其次,將上傳的字符串轉化成字節流

3,最后通過異步字節流上傳,以及在BlobHttpHeaders中指定文件內容的ContentType

3.5刪除Blob數據

#region 05,刪除Blob+async Task DeleteBlobAsync(string blobName)

/// summary

/// 刪除Blob

/// /summary

/// param name=blobNameblob名稱/param

/// returns/returns

public async Task DeleteBlobAsync(string blobName)

{

  var containerClient = _blobServiceClient.GetBlobContainerClient(picturecontainer);

  var blobClient = containerClient.GetBlobClient(blobName);

  await blobClient.DeleteIfExistsAsync();

}

#endregion

刪除blob具體實現方法

1,首先我們可以看到先通過picturecontainer名稱獲取到ContainerClient,再通過需要的Blob名稱獲取到BlobClient

2,最后調用異步”DeleteIfExistsAsync“方法,將blob進行刪除

ok,具體針對于Blob的增刪查的方法就介紹完成

三,結尾

今天內容較少,只是把上一篇關于Blob操作的一些方法貼了出來,講了一下對于Blob的操作,大家也可以通過微軟官方文檔:Azure Storage Blobs。下一篇將開始新的介紹Storage的新內容Azure Table Storage

github:https://github.com/yunqian44/Azure.Storage.git

作者:Allen

版權:轉載請在文章明顯位置注明作者及出處。如發現錯誤,歡迎批評指正。

作者:Allen版權:轉載請在文章明顯位置注明作者及出處。如發現錯誤,歡迎批評指正。


文章推薦
AppGallery Connect AppLinking鏈接有效期大揭秘,appgalleryconnect使用教程
Google  外貿平臺推廣如何進行有效優化,谷歌推廣怎么用關鍵詞工具
Glu 通過在 Eternity Warriors 3 中添加游戲禮物功能提高玩家參與度
Flutter新廣告格式現開放Beta測試申請,flutter視頻客戶端


特別聲明:以上文章內容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關于作品內容、版權或其它問題請于作品發表后的30日內與ESG跨境電商聯系。

搜索 放大鏡
韓國平臺交流群
加入
韓國平臺交流群
掃碼進群
歐洲多平臺交流群
加入
歐洲多平臺交流群
掃碼進群
美國賣家交流群
加入
美國賣家交流群
掃碼進群
ESG跨境專屬福利分享群
加入
ESG跨境專屬福利分享群
掃碼進群
拉美電商交流群
加入
拉美電商交流群
掃碼進群
亞馬遜跨境增長交流群
加入
亞馬遜跨境增長交流群
掃碼進群
亞馬遜跨境增長交流群
加入
亞馬遜跨境增長交流群
掃碼進群
拉美電商交流群
加入
拉美電商交流群
掃碼進群
ESG獨家招商-PHH GROUP賣家交流群
加入
ESG獨家招商-PHH GROUP賣家交流群
掃碼進群
2025跨境電商營銷日歷
《2024年全球消費趨勢白皮書——美國篇》
《2024TikTok出海達人營銷白皮書》
《Coupang自注冊指南》
《eMAG知識百科》
《TikTok官方運營干貨合集》
《韓國節日營銷指南》
《開店大全-全球合集》
《TikTok綜合運營手冊》
《TikTok短視頻運營手冊》
通過ESG入駐平臺,您將解鎖
綠色通道,更高的入駐成功率
專業1v1客戶經理服務
運營實操指導
運營提效資源福利
平臺官方專屬優惠

立即登記,定期獲得更多資訊

訂閱
聯系顧問

平臺顧問

平臺顧問 平臺顧問

微信掃一掃
馬上聯系在線顧問

icon icon

小程序

微信小程序

ESG跨境小程序
手機入駐更便捷

icon icon

返回頂部