使用 EntityFramework v4.1 和 IBM Data Server Client v9.7fp5
,DB 首先基于具有 DATE 列的预定义 DB2 表生成代码。DB2 DATE 列在代码生成期间映射到 .NET DateTime 数据类型。
尝试INSERT
一行时,收到以下错误
错误 [22008] [IBM] CLI0114E 日期时间字段溢出。SQLSTATE=22008
这是有道理的,因为 .NET 没有 DATE 数据类型,只有 DATETIME 并且该属性将包含比 DB2 DATE 列所期望的更多的数据。
问题是
为什么 .NET 基本代码不使用 ToShortDateString() 自动转换并为 DB2 提供它所期望的?
在 .NET 将 SQL 事务提交给 DB2 之前,可以使用哪些方法来覆盖 .NET 基本逻辑并转换应用程序代码中的值?
任何帮助或反馈将不胜感激。谢谢!