BizTalk 2013 R2-决策形状未遵循正确的逻辑路径

BizTalk 2013 R2-决策形状未遵循正确的逻辑路径,biztalk,biztalk-2013r2,Biztalk,Biztalk 2013r2,旧商务应用程序(不是我自己设计或开发的)的问题 它的编排接收一条特定的消息,然后将其馈送到决策形状中。如果应用了以下逻辑(直接从形状第一个分支表达式复制/粘贴),则应采用该方法 msg_inputCanonical.CRUD == "D" && msg_inputCanonical.DbTable == "Staff" 但是,我可以看到它正在终止(通过使用业务流程调试器),因为它遵循Else分支并最终到达终止形状 我已经检查了msg_inputCanonical以确认所传递的值

旧商务应用程序(不是我自己设计或开发的)的问题

它的编排接收一条特定的消息,然后将其馈送到决策形状中。如果应用了以下逻辑(直接从形状第一个分支表达式复制/粘贴),则应采用该方法

msg_inputCanonical.CRUD == "D" && msg_inputCanonical.DbTable == "Staff"
但是,我可以看到它正在终止(通过使用业务流程调试器),因为它遵循Else分支并最终到达终止形状

我已经检查了msg_inputCanonical以确认所传递的值(如下从跟踪消息部分提取),并且可以看到它根据其映射匹配字符串条件-CRUD=ChOp

<DbTable>Staff</DbTable>
<ChOp>D</ChOp>
职员
D
我看不到任何其他因素会影响这条改道路线,所以有人能想到可能是什么怪癖造成的吗

注意:我已经修改了生成msg_inputCanonical的WCF-SQL存储过程,因为在此之前,它没有修剪任何CRUD/DbTable值,并且在中留下了死区。 还有一个映射在
ChOp
属性上使用了ltrim/rtrim functoid,但同样-看不出修剪已经修剪过的字段会有什么危害


我还尝试在开发环境中复制逻辑,当我传递消息时,它会按照预期的方式沿着正确的分支运行。

我记得在前面的问题中,您没有开发/测试环境,因此您可以创建一个使用相同映射的简单文件接收和发送端口,只是为了确保输出是您真正期望的。另外,我希望您在文本编辑器中检查文件,因为许多XML查看器也会删除任何空白。*或者只是订阅同一消息的发送端口Hi Ruud,因为我之前的帖子我已经成功地启动了一个虚拟机,并且有了一个商业开发环境,因此,我现在能够突破并进行大量的实验:)我已经测试过这种方法(应该在我的帖子中澄清,抱歉),并且不能复制这个问题(它在我的模型构建中运行良好)。我还在Notepad+中浏览了消息,并打开了相关的字符视图,以发现死区/字符,看起来不错。您已经向我们显示了部分输入消息,您是否也可以在地图的输出消息中双击这些字段并在此处显示?当然,我已经去掉了一些不相关的字段,但正如您所看到的,CRUD(相当于转换中的切块)是D,不包含任何死区,dbTable是StaffTable,符合逻辑:D Staff