public AzureBlobFileSystem(AzureBlobFileSystemOptions options, string rootDirectory) { _options = options; if (!string.IsNullOrWhiteSpace(options.ConnectionString)) { _client = new BlobServiceClient(options.ConnectionString); } else if (!string.IsNullOrWhiteSpace(options.SharedAccessSignature)) { _client = new BlobServiceClient(new Uri(options.SharedAccessSignature)); } else if (string.IsNullOrWhiteSpace(options.AccountName) || string.IsNullOrWhiteSpace(options.AccountKey) || string.IsNullOrWhiteSpace(options.BlobServiceUri)) { throw new InvalidOperationException("At least one method of connecting to the storage account must be provided and anonymous access is not supported"); } StorageSharedKeyCredential credential = new StorageSharedKeyCredential(options.AccountName, options.AccountKey); _client = new BlobServiceClient(new Uri(options.BlobServiceUri), credential); }
public AzureBlobFileSystemProvider(IOptions <AzureBlobFileSystemOptions> options, IAccountDirectoryQuery accountDirectoryQuery) { _options = options.Value; _accountDirectoryQuery = accountDirectoryQuery; }