Azure Data Factory V2:If Condition活动中自定义活动执行报错
嘿,我之前在ADF V2里把Custom Activity嵌套到If Condition时,也碰到过一模一样的链接服务报错问题,给你几个实际排查的方向试试:
检查链接服务的权限与作用域
虽然你确认了名称正确,但嵌套场景下可能存在权限继承的坑。比如你的LNK_BATCH_AZURE如果用的是托管身份,要确保ADF的托管身份拥有目标Batch账户的Contributor或对应操作权限;如果是用Key Vault存储密钥,得确认ADF已经被授予访问该Key Vault的权限策略。核对链接服务引用的大小写与JSON定义
ADF的资源名称是大小写敏感的!有时候在If Condition里手动配置Custom Activity时,可能不小心把链接服务名称的大小写写错了。你可以导出管道的JSON配置,搜索LNK_BATCH_AZURE,对比直接运行正常的Custom Activity和If Condition内的引用是否完全一致——包括大小写、拼写,甚至是引号格式。刷新ADF缓存并重新测试
偶尔ADF Web界面会存在缓存延迟,导致你修改的配置没有同步到后台。试试先保存整个管道,关闭ADF页面后重新打开,再执行测试运行;或者用Azure CLI命令az datafactory pipeline create-run来触发运行,排除Web界面的缓存干扰。复制正常的Custom Activity到分支中
如果直接创建的Custom Activity能正常运行,不妨把这个活动复制到If Condition的True/False分支里,而不是重新配置。这样能避免手动输入时的隐性错误,确保链接服务引用完全一致。
内容的提问来源于stack exchange,提问作者Julien Bouillet

