【问题标题】:C# web service returns invalid cast for an oracle date-timeC# Web 服务为 oracle 日期时间返回无效转换
【发布时间】:2013-12-23 15:30:25
【问题描述】:

我正在循环浏览从 web 服务返回的 ref 游标, 我有一个我想最终作为列表返回的对象的类,并且我将光标中的每条记录添加到这个列表中。 类中的字段之一应该是 DateTime:

[DataMember(Order = 5)]
    public DateTime StartDate
    {
        get;
        set;
    }

但是当我在读取循环中执行此行时出现无效转换错误

pe.StartDate = reader.GetDateTime(4);

如果我将类中的类型更改为字符串并执行 GetString,它会起作用,返回 dd/mm/yyyy,但我宁愿返回正确的 Oracle 日期时间。 关于如何让它工作的任何提示?

谢谢

【问题讨论】:

    标签: c# oracle web-services datetime


    【解决方案1】:

    将其读取为字符串,然后将其转换为正确的值:

    pe.StartDate = DateTime.Parse(reader.GetString(4), new CultureInfo("fr-FR"));
    

    当然,您可以将此处的法国文化替换为“dd/mm/yyyy”是标准日期格式的任何文化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多