【问题标题】:Cache Intersystems %TIMESTAMP error缓存 Intersystems %TIMESTAMP 错误
【发布时间】:2012-11-26 11:57:05
【问题描述】:
我是 Intersystems Cache 的新手,并从我通过 .NET 应用程序调用的 Web 服务返回 %Timestamp 属性时收到以下错误:
[System.FormatException] = {"The string '2012-11-22T20:00Z' is not a valid AllXsd value."}
有谁知道我如何在返回之前将%Timestamp 属性重新格式化为欧洲日期/时间格式?
谢谢,
哦。
【问题讨论】:
标签:
timestamp
intersystems-cache
intersystems
【解决方案2】:
执行此操作的代码可在 %Library.TimeStamp 类的 LogicalToXSD 类方法中找到。查看代码,它并不打算支持不同的日期/时间格式。
您可以将属性从数据类型TimeStamp 更改为数据类型EuropeanTimeStamp,这是您创建为%Library.TimeStamp 子类的类。然后,您可以覆盖 LogicalToXSD 和 XSDToLogical 方法。
显然,您使用的任何格式都是 Web 服务的所有消费者都将获得的格式。
您也可以在.NET 方面处理此问题。如果您可以告诉正在使用 Web 服务的任何内容,所讨论的属性是一个字符串,那么您可以稍后将其转换为日期/时间。