Azure:使用BillingManagementClient类获取发票数据

时间:2017-07-10 09:15:25

标签: c# api azure billing

以下代码的最后一行导致"操作返回了无效的状态代码' BadRequest'" 例外,我不知道理解原因:

给出以下代码:

var tenantDomain = ConfigurationManager.AppSettings["TenantDomain"];
var clientId = ConfigurationManager.AppSettings["ClientID"];
var secret = ConfigurationManager.AppSettings["ClientSecret"];
var subscriptionId = ConfigurationManager.AppSettings["SubscriptionID"];

var serviceCreds = await ApplicationTokenProvider.LoginSilentAsync(tenantDomain, clientId, secret);
var bmc = new BillingManagementClient(serviceCreds);
bmc.SubscriptionId = subscriptionId;

List<Invoice> allInvoices = bmc.Invoices.List().ToList();

建议有人吗?我应该明确指定日期吗?怎么样?

1 个答案:

答案 0 :(得分:1)

  

建议有人吗?我应该明确指定日期吗?怎么样?

如果我们想要访问账单,我们需要将账单读取器角色分配给需要访问订阅账单的人。我们可以获得蔚蓝官方tutorials的详细步骤。我还测试了你提到的代码,代码没有问题,如果支持的话。以下是官方tutorials的摘录。

  

结算阅读器功能处于预览状态,尚不支持企业(EA)订阅或非全局云。

请尝试登录Azure Portal以检查是否有权访问访问帐户。如果您看到发票访问权限已停用,则似乎不支持订阅类型。

enter image description here

enter image description here

如果您还有其他问题,可以contact support快速解决问题。