最近在做一个数据接口,对方是用C#做的WebService接口,之前都一切正常,但最近对方接口升级之后,我处理一个对象时发生异常。
故障现象:
为一个TXSDecimal类型的对象后,在调用其交易函数时报错。
System.FormatException: 该字符串未被识别为有效的 DateTime。
在 System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)
在 System.DateTime.Parse(String s)
在 WS.ServicePrsesent.WriteQD2(ValidateInfoClass Ol010, QDInfoClass[] O10OO0)
我的代码如下:
QDINFOS[i].happentime := TXSDateTime.Create;
QDINFOS[i].happentime := DateTimeToXSDateTime(FieldByName('rq').AsDateTime);谁能知道,这是什么原因??
故障现象:
为一个TXSDecimal类型的对象后,在调用其交易函数时报错。
System.FormatException: 该字符串未被识别为有效的 DateTime。
在 System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)
在 System.DateTime.Parse(String s)
在 WS.ServicePrsesent.WriteQD2(ValidateInfoClass Ol010, QDInfoClass[] O10OO0)
我的代码如下:
QDINFOS[i].happentime := TXSDateTime.Create;
QDINFOS[i].happentime := DateTimeToXSDateTime(FieldByName('rq').AsDateTime);谁能知道,这是什么原因??
2. 比较一下正常使用的用户与不能正常使用的用户操作系统的时间格式设置
这东西调试就要进行抓包看数据!
如果怀疑是Delphi端调用WS问题的话,就用.NET写一个WS的客户端,获取到XML REQUEST与XML_REPONSE之后,再用Delphi写一个,再获取到XML REQUEST与XML_REPONSE,二者的值做对比!光靠猜不中用!!!