业务流程中的 BizTalk C# 命名空间冲突

BizTalk C# namespace collision in orchestrations

在业务流程中,我试图在传出的 EDI 消息中设置属性。 在我写的消息分配中:

msgEDI850(EDI.DestinationPartyName) = HelperObj.EDIParty;

在编译时它会说 DestinationPartyName 未定义。

错误详细信息显示它正在查找错误的命名空间。 C# 编译器正在查找 "MyCompany.EDI" 而不是 "EDI",因为它应该是

IDE 代码完成显示 EDI.DestinationPartyName 有效。

我更改了应用程序命名空间以不在任何级别包含 EDI。 这不起作用:

msgEDI850(global::EDI.DestinationPartyName) = HelperObj.EDIParty;

关于如何让它在自动生成的代码中使用正确的命名空间有什么建议吗?

您看到的是长期存在的预期行为。简单地说,XLang 编译器很容易被冲突的命名空间混淆,无论它们在层次结构中的什么位置。

抱歉,解决方案是您不能在您的任何应用程序中使用任何 BizTalk 拥有的命名空间。 没有办法解决这个问题。也不支持 USING。

因此,没有 EDI、BTS、BTS2、BizTalk 等