是否有不更改输出日期值的Datetime格式?

时间:2019-05-22 12:56:19

标签: c# biztalk biztalk-2013

我在XML中有一个字符串,它是一个带时区的日期时间,我想将其更改为C#中的DateTime格式。

问题在于它从字符串格式变为datetime格式,值由于时区而改变。

所以我想知道如何在不修改值的情况下将xml字符串更改为c#datetime。

字符串xml值为:

  

2014-01-01T00:00:00.0000000 + 02:00

,当我应用日期时间格式时,它会变为:

  

2013/12/31下午10:00:00

这是我的c#代码,用于将字符串转换为日期时间:

Convert.ToDateTime(datestringXml);

我需要使用Max()和Min()函数对日期进行排序

我希望输出为2014年1月1日...(我不在乎小时,分钟和秒)

2 个答案:

答案 0 :(得分:0)

您看到一个不同的转换日期,因为起始日期为+02:00。转换正确。 如果只需要日,月和年,则可以解析原始字符串,并使用读取的值创建新日期。

答案 1 :(得分:0)

您使用的是DateTime对象,而不是DateTimeOffset对象。偏移量部分+02:00不适用于DateTime对象,因此它将为您计算DateTime。如果只是将值解析为DateTimeOffset对象,就不会有这个问题。