机房收费系统——转换list泛型时,字段名称不对应出现问题

        由于之前对泛型研究了一番,所以就开始尝试着在机房收费系统重构中加入了泛型的使用。但是到了做学生查看余额这个功能的时候,还是按照之前的方法做的,但是在加载数据的时候班级这个框就没有显示出来……然后我就纳闷了。



       我就去看这一段的代码,发现也没什么问题呀,都是在赋值呀,然后我就单步调试,也是走了那一句赋值的代码,但是没有值,为什么其他的都Ok,所以我就很纳闷,因为这个地方我用到了视图,我以为是视图出了问题,然后就去查我的视图。但是我想了一下,视图就是一个虚拟的表,只要建好了,跟直接调数据库表中的东西是一样的,所以应该不是视图的问题,通过排除法,我找到了问题的根源——数据库中的字段!数据库中的这个字段是class,但是我去看我实体中的字段写的是Sclass,因为class是一个关键词,所以只能定义成Sclass,然后这个字段跟数据库中的字段不一样,其他的字段是一样的,而且我让他返回的是泛型,所以只有这个字段会出现问题。

代码:




     视图字段:



      数据库字段:



     然后我就把数据库中的字段改成了和实体一样的,这样就成功了!

     修改数据库字段:



     修改视图字段:



     成功显示:


 

        由于泛型参数(尖括号里的)写的是一个实体类,当执行的时候,会自动获取实体类的属性名,然后Datatable中匹配有没有该名称的字段,有的话就赋值。Datatable中的每一行记录都这样处理。所以我们应该把实体类的属性名和数据库表中的字段名一模一样。

        总结:有的时候我们以为我们对这个新的知识懂了,会用了,其实我们只是没有碰到问题而已,只有多用,多遇到问题,我们才能真正的越来越了解,这就是我们都说的在问题中成长!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值