达梦版本: DM8 1-2-61-21.08.17-145730-10000-ENT
CPU: x86_64
系统: windows 10
在.Net Core 3.1 的达梦EF方言库中
数据库中的TIME类型的字段在读取后被默认映射为了DateTime类型,而非TimeSpan类型。
由于映射错误导致读取包含TIME类型的字段的实体类时会在类型为TimeSpan的属性上发生赋值错误
Unable to cast object of type 'System.DateTime' to type 'System.TimeSpan'.
不可能接受将实体类属性改为DateTime的方案,因为在EF下其他数据库对于TIME类型映射的CLR类型都是TimeSpan,改变属性类型后会导致在其他数据库框架下发生赋值错误
DmProvider 版本 1.1.0.18073
Microsoft.EntityFrameworkCore.Dm 版本 3.1.0.17143
该问题依然存在

驱动层有个转换配置,添加dbtimeToTimeSpan=true就会转成TimeSpan。