SSAS Tabular连接报错:服务器返回无法识别响应及XmlException 0x06无效字符
连接Power BI SSAS Tabular时出现ResponseFormatException错误
我使用C#的Microsoft.AnalysisServices.Tabular程序集连接Analysis Services Server,代码原本正常运行数月,未修改连接字符串的情况下突然报错。
代码示例
using var server = new Server(); server.Connect(myConnectionString); var db = server.Databases.FindByName("MyAnalysisServer"); ...
异常信息
Microsoft.AnalysisServices.ResponseFormatException: 服务器发送了无法识别的响应。
内部异常
XmlException: 十六进制值0x06是无效字符。
此异常最初在以下调用堆栈中抛出:[外部代码]
连接字符串
Provider=MSOLAP;datasource=powerbi://api.powerbi.com/v1.0/myFunctions/My Function;initial catalog=MyAnalysisServer;User ID=app:12345678-eee-0000-0000-123456789012@12345678-1234-5678-1234-123456789012;Password=qwertyui~12345678
可能的解决方案
- 更新MSOLAP驱动:Power BI服务协议可能已更新,旧版MSOLAP驱动无法解析新响应。卸载现有驱动,安装最新版的Microsoft Analysis Services OLE DB Driver,连接字符串中指定最新驱动名称(如
Provider=MSOLAP.8)。 - 清理本地缓存:本地会话缓存或无效令牌可能导致响应解析异常。重启应用和开发环境,删除
%localappdata%\Microsoft\Power BI Desktop下的缓存文件夹。 - 验证服务主体权限:检查服务主体是否仍拥有目标工作区和数据集的管理员/成员权限,确认数据集未被删除或移动。
- 转义连接字符串特殊字符:数据源包含空格,尝试用引号包裹该部分:
datasource="powerbi://api.powerbi.com/v1.0/myFunctions/My Function"。 - 更新NuGet包:将
Microsoft.AnalysisServices.Tabular及相关依赖包(如Microsoft.AnalysisServices.Core)更新到最新稳定版。 - 排查网络问题:新增代理或防火墙规则可能篡改响应数据。测试绕过代理连接,确认防火墙允许访问
api.powerbi.com且未修改响应内容。
内容的提问来源于stack exchange,提问作者LatentDenis
相关产品推荐
相关产品推荐

