【问题标题】:Linked in dotnetopenauth -> The conversion of a datetime2 error链接在 dotnetopenauth -> datetime2 错误的转换
【发布时间】:2013-03-13 01:03:47
【问题描述】:

我正在尝试让用户通过链接登录,但当他们访问默认模板 Account/ExternalLoginConfirmation 时,我收到此错误:

将 datetime2 数据类型转换为 datetime 数据类型 导致超出范围的值。该语句已终止。 说明:执行过程中发生未处理的异常 当前的网络请求。请查看堆栈跟踪以获取更多信息 有关错误的信息以及它在代码中的来源。

异常详细信息:System.Data.SqlClient.SqlException:转换 将 datetime2 数据类型转换为 datetime 数据类型会导致 超出范围的值。

有谁熟悉这个库的错误?

【问题讨论】:

  • 我相信当我将日期时间数据库列设置为非空并且我忘记在保存新记录期间为其分配一个值时,我已经看到了这一点...查找不存在的日期时间值为您从代码中所做的任何事情分配一个值。
  • 谢谢!!把它贴在答案中以获得积分!
  • 太棒了 - 很高兴你明白了!

标签: asp.net-mvc linkedin dotnetopenauth


【解决方案1】:

当我将 DateTime 数据库列设置为非 null 并且我没有为其分配值(我将其保留为 NULL)时,我在使用 Entity Framework 之前已经看到了这个问题。

检查您的代码并查找标有 NotNull 的任何 DateTime 属性,并确保您在提交更改/保存记录之前分配了这些属性值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-26
    • 2022-12-02
    相关资源
    最近更新 更多