• 未将对象引用设置到对象的实例。未处理NullReferenceException


          在敲机房重构的过程中,遇到了各种各样的问题,其中有这样一个问题:“未将对象设置到对象的实例”,如下图:

     

          这个问题真的很常见,也很令人纠结;尤其是这段时间我旁边的好多人都遇到了这个问题,调试了好多天都找不到解决办法,真是折磨人啊。

          那么这个错误到底是哪里的问题呢?其实,这个有很多方面的原因,我就我所遇到的情况说一下。

          1、  未使用new初始化对象。

             在定义实体类或者某个层时,有时候会忘记加new

          2、  命名错误。

             有时候我们会重新给类进行命名,但是忘记重新生成解决方案或者已经生成但是不知道什么原因造成保存的文件与程序中类的名字不一致,这样也会导致这种问题的出现。还有一种命名错误是存在于程序中的,因为重命名,但是代码中的名字并没有重新生成,导致不一致,出现错误。

             这个错误常见于工厂+反射+配置文件这部分,好多人都出现了这样的问题。在这里提醒大家认真注意:第一,检查自己的类名是否因为自己的重命名而不一致(尤其是D层);第二,工厂中的字符拼接起来与自己的D层中的相关类的名称是一致的;第三,检查自己的保存路径下的文件中的名称与自己的程序中断名称是否一致;第四,如果你使用了配置文件,那么一定要注意D层的类名要包含配置文件你所设定的字符,具体如下:


          3、  控件属性未设置。

             该问题我是在做导出Excel这部分时遇到的,我将返回的数据在DataGridView控件中显示,一开始的都显示成功,没有出现什么错误,但是在做组合查询的时候就出现了该问题。还好记得之前看过师姐的一篇博客,有记录该问题的解决办法,就是将控件的allowUserToAddRows属性设置为False


          这是目前我遇到这个问题的几种类型,当然这样的问题还有很多方面的原因,希望这几种方法能给大家带来思路。也希望有其他问题和解决思路的伙伴们,给出思路,大家一块探讨,共同进步。

      

  • 相关阅读:
    质数
    解决Winform中ListView.TopItem设置的问题
    证书格式简介及不同格式之间的转换方式
    Postgresql如何清理pg_xlog
    VirtualBox 4.2 released !
    ImportError: No module named qtdemo_rc
    C#使用RSA证书文件加密和解密示例
    VIM自动关闭预览提示窗口
    VMware和VirtualBox中的网络适配器类型及虚拟网络性能优化
    正则表达式Java
  • 原文地址:https://www.cnblogs.com/victor-grace/p/7253812.html
Copyright © 2020-2023  润新知