问题标签 [biztalk-2020]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
43 浏览

cryptography - 计算 BizTalk 业务流程表达式形状中的校验和

在编排中,我需要确定我之前是否已经处理过消息,如果是,我必须忽略它以进行进一步处理。我想我可能能够计算消息的校验码以获得唯一值,例如 MD5 校验和。

如何轻松触发编排中消息的此类计算?

0 投票
1 回答
74 浏览

json - 如何使用 JSON 输入字符串从编排中调用 JSON 解码器?

在编排中,我有 JSON 字符串(从帮助类返回字符串中检索,但可以根据需要进行更改)。

如何调用自定义管道(包括配置),包括 JSON 解码器管道组件,以将 JSON 解码为 XML?

问题似乎是 System.String 类型的 XLANGMessage,它将 JSON 文本包装成如下内容:

从编排运行管道时会导致以下错误消息:

如何使用 JSON 字符串调用此自定义管道?

0 投票
1 回答
255 浏览

json - BizTalk 2020 JSON 编码器生成对象的根数组,即以 [ ] 开头

有很多关于 BizTalk JSON 编码器的文章...

我正在尝试为需要根级数组的第 3 方软件生成 JSON,如下所示:

我正在尝试使用模式控制输出,但我无法在根节点上指定 minOccurs 和 maxOccurs。我也尝试过“Group Max/Min Occurs”,没有区别。

难道不能这样做吗?用于将 Array 属性添加到输出 XML 的旧 newtonsoft hack 怎么样?(我也试过这个,但失败了......)

0 投票
1 回答
132 浏览

oracle - 配置绑定时出现 BizTalk oracle 错误

我用 CU1 配置了 BizTalk 2020 Server,并以这种方式安装了 Oracle Client。

  • 下载 ODAC183_x64 和 ODAC183Xcopy_32bit。
  • 我使用 setup 安装 odac183,然后我将在 x64 和 x86 版本中放入 gac oracle.dataaccess(版本 = 4.122.18.3)。
  • 我导入了旧的绑定和 oracle 连接似乎没问题。

但是,当我要更改配置时,我收到此错误绑定无效。 (Microsoft.BizTalk.Adapter.Wcf.Common)。 'Oracle.DataAccess.Client.OracleConnection' 的类型初始化程序引发了异常。 (Oracle.DataAccess)。 试图加载格式不正确的程序。 (来自 HRESULT 的异常:0x8007008)(Oracle.DatacAccess) 任何建议?

0 投票
1 回答
25 浏览

performance - BizTalk 延迟形状是否占用任何资源或对性能不利?

我有一个集成,我正在迭代多个批次并将它们发送到 WCF 服务。WCF 服务的开发人员已与我联系,并说他们无法按照我们发送给他们的速度处理批次。他们想知道我们是否可以在每批之间等待 10 分钟。

话虽如此,我想知道 BizTalk 延迟形状是否适合这个?我猜测延迟形状会使编排处于脱水状态,因此它不会保留来自其他进程的任何资源。它是否正确?有什么理由我不应该考虑使用延迟形状?也许性能问题或类似的东西?我知道延迟形状是为这种场景创建的,但我只找到 1-2 分钟的示例。10分钟可以吗?在产生负面影响之前,OK 是否有任何限制?

有很多问题,但我希望它们有意义。

0 投票
0 回答
39 浏览

rename - 配置 BizTalk - 更改数据库名称

我想在同一个 sql 实例上配置 2 个单独的 BizTalk 环境。

是否可以在为一个环境配置 BizTalk 2020 时更改默认数据库名称?如果我更改如下名称并点击配置,它会起作用吗?

  1. BizTalkMsgBoxDb20
  2. BizTalkMgmtDb20
  3. BizTalkDTADb20 同样...
0 投票
0 回答
66 浏览

azure-blob-storage - BizTalk BlobStorageAdapter - 将 Blob 元数据提升为 BizTalk 属性

我在 BizTalk 2020 中使用 AzureBlobStorage 适配器并从 Azure Blob 存储接收 Blob。这些 blob 具有我想在我的编排中使用的元数据。所以我创建并部署了一个包含元数据键作为元素的模式。

在接收位置中,我使用架构的命名空间输入了“blob 元数据的命名空间”,并选中了“提升元数据属性”复选框

不幸的是,我收到以下错误:“按名称空间按列表加载属性信息失败或在列表中找不到属性。验证架构是否已正确部署。”

架构:

接收位置/适配器配置:

在此处输入图像描述

0 投票
1 回答
119 浏览

biztalk - 添加某些 nuget 包后,Biztalk 2020 Build 失败并出现 AddBizTalkHiddenReferences

复制步骤:

  • 堆栈:Windows 10、Visual Studio 2019 专业版、BizTalk Server 2020 开发者版 CU1。
  • 在 Visual Studio 中创建一个新的 Biztalk 服务器项目
  • 管理 Nuget 包,添加一个 nuget 包。选一个:
    • 已知会破坏构建
      • 自动法 6.0、6.1、6.2
      • nodatime 3.0.5
      • Azure.Storage.Blobs 12.9.1
    • 已知不会破坏构建
      • 自动法 5.2
      • 我测试了许多其他人。
  • F6(构建)或运行 msbuild

就我的测试而言,只要 nuget 包直接列出具有 .net 框架的变体作为依赖项,它就可以工作。如上表所示,仅将 .net 标准和 .net 5 作为依赖项列出,构建失败。

实际错误:

此 github 问题中提供了一个 repro zip 包。(起初我认为这是 autofac 的一个特殊问题,但事实并非如此)

我的旧堆栈(windows server 2016、visual studio 2015、biztalk 2016)不受影响。我们在那里的 biztalk 项目中使用 autofac 6.1 没有任何问题。

我觉得这是一个 BizTalk 错误,但我不够聪明,无法找到 Microsoft 允许报告它的方式。

所以最后的问题是,是否有解决方法或错误修复?

0 投票
2 回答
48 浏览

biztalk - 通过删除 BizTalk Orchestration 中使用的消息来释放内存?

我已经构建了一个带有循环的编排,以从 REST Web 服务中检索分页数据。根据页面大小和偏移量,我可以为“下一页”数据调用服务。然后我将其分批,将其映射到内部格式并进一步处理。处理一个页面后,我从 REST Web 服务请求下一页。

事实证明,运行编排和发送端口的主机会导致内存在处理所有数据期间不断增长,并最终达到节流模式。

为什么当我完成一页循环时没有释放内存?是存储在构建内存的编排中的“消费”消息吗?是否可以从这些“消费”消息中清除编排,以释放使用的内存?(编排或发送端口上没有活动的消息跟踪。)

0 投票
0 回答
43 浏览

c# - BizTalk:Microsoft.Practises.ESB 挂起发送端口 ALL 上的消息。带有 SQL 错误的异常

我们在 BizTalk 2020 中使用 ESBExceptionDb 来记录错误信息。最近,我们开始在发送端口ALL.Exceptions上的应用程序Microsoft.Practises.ESB上收到以下错误:

Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException:字段/参数名称的输入数据大于 SQL Server 上允许的数据。允许的最大长度为 256,找到的长度为 340。

服务器堆栈跟踪: 在 System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.End(SendAsyncResult 结果) 在 System.ServiceModel
的 System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult 结果) .Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result) at System.ServiceModel.Channels.ServiceChannel.EndRequest(IAsyncResult result) 在 [0] 处重新抛出异常: 在 System.Runtime.Remoting.Proxies.RealProxy。 HandleReturnMessage(IMessage reqMsg, IMessage retMsg)






在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 类型)
在 System.ServiceModel.Channels.IRequestChannel.EndRequest(IAsyncResult 结果)
在 Microsoft.BizTalk.Adapter.Wcf.Runtime.WcfClient`2.RequestCallback( IAsyncResult 结果)

问题是,我找不到这个错误的原因。它说字段/参数的名称称为“名称”,但我看不到该字段在 ESBExceptionDb 的故障表中的任何位置使用。

以前有没有人遇到过同样的问题,如果有,您是如何解决的?