Tar*_*dis 7 sql-server mapping nhibernate entity exception
我知道异常的原因(SqlDateTime溢出.必须在1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之间.)是实体中不可为空的DateTime字段,所以Nhibernate希望保存比MSSQL接受的更小的DateTime值.
问题是项目中有很多实体要找到正确的DateTime字段.
该异常发生在SaveOrUpdate()之后,但不是由我想要保存的实体触发,而是在当前会话中加载的任何其他实体现在受flush()的影响.
我怎样才能找出哪个字段真正应对异常负责?
您是否尝试过强制 NHib 输出生成的 sql 并检查流氓日期时间?如果您使用NHProfiler之类的东西(我不为他们工作,只是一个满意的客户),那会更容易,但实际上,为您所做的一切都是显示/隔离 sql,您可以从输出窗口执行此操作需要一点额外的努力。诀窍是,如果它是一个非常深的保存,那么可能会有很多 sql 需要阅读,但您很可能能够很快发现它。
| 归档时间: |
|
| 查看次数: |
1958 次 |
| 最近记录: |