果糖网

无法读取内存 返回

SqlSugar
4 108

image.png

Console.WriteLine(a);这句话会直接报错,理论上就算是null也不会报错。

通过GetDataTable然后在读取行列值是没有问题的。

实体没有问题。

image.png

热忱回答4

  • 可能和你的实体有关系,你可以单独写个DEMO比较一下

    0 回复
  • @fate stay night:我的实体就留这一个属性,也不行。

    0 回复
  • @fate stay night

    找到原因了,数据库Oracle11g 字段类型为 NUMBER(0,8),但是实体使用的是string类型接收,才出现这种现象。

    调试Sqlsugar的源码才发现问题原因。

    源码是“先调用IDataRecord的GetFloat方法,再调用实体属性的SetValue方法“;将Float值赋值给类型为String属性”才出现这个问题。

    是不是可以考虑在Property.Type是string的情况下,优先使用getConvertString,或者这种情况抛出一个异常给上层。

    0 回复
  • 可以的 后续完善

    0 回复

学习文档