Enterprise Library 5.0 Logging -在运行时未拾取时区更改

本文关键字:时区 运行时 Library Logging Enterprise | 更新日期: 2023-09-27 18:11:25

基本上我已经开发了一个c#服务,它运行并使用企业库库5.0日志记录,该日志记录是由我的项目中的App.config配置的。我在App.config中为我的服务创建了一个自定义文本格式化器,如下所示:

{timestamp(local)} [{win32ThreadId}{dictionary(:{value})}] {message}

在我的服务运行期间,如果我更改了时区,系统时钟将自动更新以反映时区更改,但是时间更改不会在随后的日志调用中被拾取。

相反,如果我自己更改实际的系统时钟而不更改时区,它会在随后的日志调用中获取时间更改。

是否有人知道这是一个错误在企业图书馆?我似乎在这里找不到任何相关的问题,也没有在谷歌上搜索过。

Enterprise Library 5.0 Logging -在运行时未拾取时区更改

你看到的行为不是企业库的错误,这是。net的行为。

缓存时区数据,因为假定它是相当静态的数据。

缓存的时区数据包括本地时区的数据协调世界时(UTC, Coordinated Universal Time)时区,以及任何与UTC时区一致的时区通过使用FindSystemTimeZoneById和GetSystemTimeZones .

如果确实存在问题,可以通过调用TimeZoneInfo.ClearCachedData()来清除缓存。