1

BizTalk Server 2010 具有以下系统配置

Server: Windows Server 2008
FrameWork: .Net 4.0

通过 HTTP 当 BizTalk 接收到 DateTime 组合时,它被转换如下。

DateTime Sent: **2010-06-01T00:00:00-04:00**
DateTime Received and logged: **2010-06-01T00:00:00-04:00** (BizTalk 2010)

在 BizTalk 2004(我们的旧集成环境,使用 .Net Framework 1.1)中,BizTalk 以下列格式接收和记录消息。

DateTime Sent: 2010-06-01T00:00:00-04:00
DateTime Received and Logged: 2010-06-01T00:00:00.0000000-04:00

可以看出,前导零被添加到日期时间。以下是一些对我来说是个谜的组合。

Datetime Sent to BizTalk 2004: 2011-03-01T00:00:00-05:00
DateTime received and Logged: 2010-06-01T00:00:00.0000000-04:00

模式在两种环境中都定义为 xsd:dateTime。我无法解释为什么 BizTalk 或框架在两种环境中的行为都不同。

注意:在任何环境中都不会发生日期转换。

在 BizTalk 2010 中,我可以看到时区 (-4:00) 丢失。

想知道我们是否需要针对此 DateTime 问题进行任何设置。

4

2 回答 2

0

您将需要更改服务器(或组中的服务器)上的时区。BizTalk 主机实例使用计算机的时区和区域设置。

不要从您的应用程序代码中以编程方式设置时区,因为进程和线程可以在多个实例之间共享,您将遇到非常讨厌的问题。

于 2016-07-25T08:52:20.323 回答
0

检查注册表中服务器的时区设置是什么 您可以在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation 找到密钥

但是,请确保在进行任何更改之前备份您的注册表。

于 2018-10-16T16:48:20.893 回答