Представьте, у нас есть 2 учетных записи хранения Azure, одна из них обычная, другая - правительственная (или Германия, Китай и т. Д.). Вот как мы создаем CloudBlobClient:
private const string ConnectionStringTemplate = "DefaultEndpointsProtocol={0};AccountName={1};AccountKey={2};";
public static CloudBlobClient Create(string protocol, string accountName, string accountKey)
{
var connectionString = string.Format(CultureInfo.InvariantCulture, ConnectionStringTemplate, protocol, accountName, accountKey);
var account = CloudStorageAccount.Parse(connectionString);
return account.CreateCloudBlobClient();
}
Этот код отлично работает для обычной учетной записи, но для правительственной - нет. Мы должны указать EndpointSuffix (core.usgovcloudapi.net вместо core.windows.net, который по умолчанию), и строка подключения должна быть такой:
"DefaultEndpointsProtocol={0};AccountName={1};AccountKey={2};EndpointSuffix={3}";
Итак, вопрос в том, как я могу узнать, какая учетная запись имеет только AccountName и AccountKey? Есть ли какой-нибудь метод API для проверки типа учетной записи или суффикса конечной точки?