You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PowerShell脚本将PowerBI工作区高级容量转为普通容量

PowerBI工作区高级容量转普通容量的PowerShell脚本验证与修正

原代码存在的问题

  • 循环语法错误:forEach不是PowerShell的合法命令,需使用ForEach-Object(或缩写%)
  • 请求方法错误:Invoke-PowerBIRestMethod的-Method参数需指定为Post,而非AssignToCapacity
  • 请求体传递错误:容量ID的JSON内容需通过-Body参数传递,且必须转换为JSON格式

修正后的正确代码

# 连接PowerBI服务账户
Connect-PowerBIServiceAccount

# 导入包含工作区ID的CSV文件
$data = Import-Csv -Path C:\powershell\UnassignWorkspace.csv

# 遍历每个目标工作区
$data | ForEach-Object {
    # 构造API请求路径
    $uri = "https://api.powerbi.com/v1.0/myorg/groups/$($_.WorkspaceID)/AssignToCapacity"
    
    # 构造请求体:空GUID代表将工作区转为普通容量
    $body = @{
        capacityId = "00000000-0000-0000-0000-000000000000"
    } | ConvertTo-Json
    
    # 发送POST请求完成容量转换
    Invoke-PowerBIRestMethod -Url $uri -Method Post -Body $body -ContentType 'application/json'
}

关键说明

  • 确保CSV文件UnassignWorkspace.csv包含名为WorkspaceID的列,存储需要转换的工作区ID
  • 执行前需确认已安装PowerBI管理模块,安装命令:Install-Module -Name MicrosoftPowerBIMgmt
  • 空GUID00000000-0000-0000-0000-000000000000是PowerBI API规定的移出高级容量的专用标识

内容的提问来源于stack exchange,提问作者Md Shahnawaz Alam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 21:35:36