c# - 如何将文件添加到 Azurite [Azure 存储模拟器]

标签 c# azure azure-blob-storage

我很难弄清楚如何将文件添加到此模拟器,以便在本地测试 azure blob 的不同操作。

最佳答案

安装 azurite 后,您需要手动启动它。

enter image description here

有两种方式连接Azurite:

1. enter image description here

2. enter image description here

enter image description here

下一步我觉得和在云端使用azure storage是一样的,只需要使用sdk进行blob操作即可:

var blobHost = Environment.GetEnvironmentVariable("AZURE_STORAGE_BLOB_HOST");  // 126.0.0.1:10000
var account = Environment.GetEnvironmentVariable("AZURE_STORAGE_ACCOUNT"); // devstoreaccount1
var container = Environment.GetEnvironmentVariable("AZURE_STORAGE_CONTAINER");
var emulator = account == "devstoreaccount1";
var blobBaseUri = $"https://{(emulator ? $"{blobHost}/{account}" : $"{account}.{blobHost}")}/";
var blobContainerUri = $"{blobBaseUri}{container}";

// Generate random string for blob content and file name
var content = Guid.NewGuid().ToString("n").Substring(0, 8);
var file = $"{content}.txt";

// With container uri and DefaultAzureCredential
// Since we are using the Azure Identity preview version, DefaultAzureCredential will use your Azure CLI token.
var client = new BlobContainerClient(new Uri(blobContainerUri), new DefaultAzureCredential());

// Create container
await client.CreateIfNotExistsAsync();

// Get content stream
using var stream = new MemoryStream(Encoding.ASCII.GetBytes(content));

// Upload blob
await client.UploadBlobAsync(file, stream);

可以引用这个官方document ,它有更详细的教程。或者可以引用这个blog .

关于c# - 如何将文件添加到 Azurite [Azure 存储模拟器],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63252943/

相关文章:

C# For 循环保留未实例化变量中的值

r - azuremlsdk 存储 azure 凭据的最佳实践

c# - .NET Core应用程序托管在azure上,第一个请求非常慢

c# - 如何重命名Azure存储(不是Blob存储)中的文件/目录(不是Blob文件)?

c# - 动态删除菜单项 : Dispose calls Remove

c# - 如何修改 dijkstra 算法以找到所有可能的路径?

php - 使用 PHP 将消息放入 Azure 队列,并将内容添加到 Blob 存储

android - Azure 云存储帐户 Android : Acces blob from android

c# - 获取我们收到 UDP 多播请求的 IP 地址

javascript - Three.js 在 Azure 中加载 .OBJ 错误,但在本地则不然