当前位置:  开发笔记 > 编程语言 > 正文

C#app中异常的含义:"不是合法的OleAut日期"?

如何解决《C#app中异常的含义:"不是合法的OleAut日期"?》经验,为你挑选了2个好方法。

有谁知道这意味着什么.在C#winforms应用程序中获取此信息:

不是合法的OleAut日期

xyz.. 21

这意味着程序中的某个位置正在尝试在公元前1 - 1月 - 公元前4713年到公元9月31日 - 9999之间的有效范围之外转换为OLE自动化日期.它可能已经滑落,因为OLE自动化日期表示为双精度数.

首先寻找方法的任何用途:

DateTime.FromOADate

DateTime.ToOADate



1> xyz..:

这意味着程序中的某个位置正在尝试在公元前1 - 1月 - 公元前4713年到公元9月31日 - 9999之间的有效范围之外转换为OLE自动化日期.它可能已经滑落,因为OLE自动化日期表示为双精度数.

首先寻找方法的任何用途:

DateTime.FromOADate

DateTime.ToOADate



2> Joe..:

OADate表示为双值,其值是1899年12月30日午夜的天数(负值表示较早的日期).

尝试将Ole Automation日期的有效范围之外的值转换为.NET DateTime值时(方法DateTime.FromOADate和DateTime.ToOADate - 它们也隐式用于COM Interop),抛出此异常.

我认为有效转换为OADate .NET DateTime值必须严格大于01/01/0100.

要将OADa​​te转换为.NET DateTime值,double值必须严格大于-657435(= 01/01/0100)且严格小于2958466.0(01/01/10000).

推荐阅读
mylvfamily
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有