VS2022创建属性关系报IUserPromptService错误问题咨询
问题背景
- 操作场景:跟随微软多维建模(Adventure Works)官方教程开展练习,执行新建属性关系操作时触发报错
- 已尝试方案:卸载并重装所有相关组件,问题仍未解决
- 运行环境:Visual Studio 2022、SSMS 2019,通过localhost连接服务实例;因服务账户无部署操作权限,采用指定Windows用户名密码的方式完成身份认证
报错详情
核心报错信息:Service provider has to support IUserPromptService! (Microsoft Visual Studio)

报错关联程序调用栈:
at Microsoft.AnalysisServices.Design.AR.EditRelationshipsDataProvider.Init(Dimension inDimension, IServiceProvider inServiceProvider) at Microsoft.AnalysisServices.Design.AR.EditRelationshipsDataProvider..ctor(Dimension inDimension, DimensionAttribute inAttribute, IServiceProvider inServiceProvider) at Microsoft.AnalysisServices.Design.AR.CommonMenuHandlers.CreateAttributeRelationship(MenuCommand menuCommand, CommandHandlingArgs args) at Microsoft.DataWarehouse.Design.CommandHandlingInfoMap.HandleCommand(MenuCommand menuCommand) at Microsoft.AnalysisServices.Design.AR.CommonMenuHandlers.InvokeCommand(MenuCommand menuCommand)
排查解决步骤
- 修复扩展版本冲突:SSMS 2019自带的旧版Analysis Services设计组件会和Visual Studio 2022的分析服务扩展产生冲突,打开Visual Studio 2022的扩展管理面板,找到「Microsoft Analysis Services Projects」扩展,升级到最新稳定版;如果系统中安装过旧版SSDT for Visual Studio 2019,先卸载该组件后重启设备。
- 重置VS服务配置:关闭所有Visual Studio、SSMS进程,以管理员权限打开Visual Studio 2022开发者命令提示符,执行
devenv /updateconfiguration命令重置Visual Studio的服务提供程序注册配置,命令执行完成后重启操作系统重试操作。 - 调整操作流程规避权限问题:不要在直连localhost服务实例的在线模式下做维度设计操作,先在本地创建Adventure Works多维项目的离线副本,在离线项目的维度设计器中完成属性关系配置后,再通过指定Windows账号密码的认证方式将项目部署到目标服务实例,避免在线直连模式下设计器无权限加载用户提示接口触发报错。
- 修复损坏的组件注册:如果以上操作无效,依次在控制面板的「程序和功能」中找到Visual Studio 2022、SQL Server Data Tools相关项,执行修复操作,修复完成后重新安装最新版Analysis Services项目扩展即可。
内容的提问来源于stack exchange,提问作者KraftDinner
相关产品推荐
相关产品推荐

