如何在没有“-05:00”UTC偏移量的情况下输出XML?

时间:2011-03-31 20:41:42

标签: .net xml utc offset

我们有一个VB.Net 2008控制台应用程序,其Module1.vb从我们的SQL Server数据库执行一些查询,并将它们作为XML输出以发送给我们的客户。

问题是只包含时间(例如,1900-01-01 21:26:03.000)的DateTime元素正在输出到附加了“-06:00”的UTC(通用时间)偏移量的XML,例如,13:56:55.0000000-06:00

当我们的客户在东部时区访问时,这会转换为一小时后,因此他们请求的时间值为13:56:55.0000000,不含-06.00。

有谁知道怎么做?

详细说明:

VS解决方案有一个Web引用我称之为WS。 Module1.vb查询数据库,比如说tblStats表,然后通过DataReader读取数据。每行都有:

Dim MyWS As New WS.tblSTATS_TYPE_V1 'which is a complexType in the wsdl
MyWS.Start_Time = CheckTime(MyDataReader("START_TIME"))

...... CheckTime是:

Private Function CheckTime(ByVal Value As Object) As DateTime
    If (IsNothing(Value) = True) Then Return New DateTime(0)
    If (IsDBNull(Value) = True) Then Return New DateTime(0)
    If (IsDate(Value) = False) Then Return New DateTime(0)
    Return New DateTime(CDate(Value).TimeOfDay.Ticks, DateTimeKind.Unspecified)
End Function

...但我添加的DateTimeKind.Unspecified没有效果。

任何人都可以给予的任何指示都将受到赞赏 - 谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用DateTimeOffset而不是DateTime类。它提供了额外的时区信息。