Azure 存储:以编程方式在存储帐户上启用 blob 版本控制

Azure Storage: Enable blob versioning on storage account programmatically

我正在通过 StorageManagementClient 以编程方式创建多个存储帐户,并希望在创建帐户时在帐户级别启用 blob 版本控制。这是如何实现的?

var storageManagementClient = new StorageManagementClient(azureCredentials)
{
     SubscriptionId = subscriptionId
};
var storageAccountCreateParameters = new StorageAccountCreateParameters
{
     // set properties
};

await storageManagementClient.StorageAccounts.CreateAsync(resourceGroupName, accountName, storageAccountCreateParameters);

我认为这可以作为 StorageAccountCreateParameters 中的创建参数使用,但我在那里没有看到任何东西。

另见 https://docs.microsoft.com/en-us/azure/storage/blobs/versioning-enable?tabs=portal

blob versioning 未包含在 StorageAccountCreateParameters 中。它属于 BlobServiceProperties class.

所以在你用上面的代码创建存储帐户后,你可以使用下面的代码来设置blob versioning:

var p1 = new BlobServiceProperties()
{
    IsVersioningEnabled = true             
};

storageManagementClient.BlobServices.SetServiceProperties("resource_group", "account_name", p1);