首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C#应用程序中异常的含义:“非合法的OleAut日期”?

C#应用程序中异常的含义:“非合法的OleAut日期”?
EN

Stack Overflow用户
提问于 2008-11-22 01:35:24
回答 6查看 50.3K关注 0票数 21

有人知道这意味着什么吗。在C# winforms应用程序中实现这一点:

不是合法的OleAut日期

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2008-11-22 15:49:18

这意味着程序中的某个地方正试图将OLE自动化日期转换到或从有效范围以外的OLE自动化日期(公元前1-4713年)到公元31-999年12月31日。这可能是因为OLE自动化日期表示为一个

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

DateTime.FromOADate

DateTime.ToOADate

票数 25
EN

Stack Overflow用户

发布于 2008-11-22 15:50:30

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

当试图将一个位于Ole自动化有效日期范围之外的值转换为/从一个.NET DateTime值(方法DateTime.FromOADate和DateTime.ToOADate -这些方法也被隐式地用于COM Interop)时,将引发此异常。

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

要从OADate转换为.NET DateTime值,双值必须严格大于-657435 (= 01/01/0100)和严格小于2958466.0 (01/01/10000)。

票数 15
EN

Stack Overflow用户

发布于 2008-11-22 01:47:07

这意味着您在某个地方提供了一个无效的日期,试图转换到或从一个OLE自动化日期以外的有效范围1-1月-4713公元前31-12月-公元999年。一个可能的原因是,它可能已经通过,因为OLE自动化日期表示为双。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/310700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档