未将设置对象引用到实例

qq_25020211 2017-11-14 02:25:49
我们在调试的时候总,如果报错, 当有异常未将设置对象引用到实例的错误,会抓取到哪一行 , 但是我发布以后 , 就只能获取到未将设置对象引用到实例, 当我那个方法里面的变量多的时候,我根本不知道是哪个对象, 我想抓到那个为null的对象 ,如何抓取? 请注意,我是想抓取到那个为null的对象 ,不是分析是什么原因导致的这个问题 !!!!!!!!!!
...全文
324 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuhangit 2017-11-20
  • 打赏
  • 举报
回复
如果发布的是DEBUG版本,可以用本地附加进程方式进行调试
秋的红果实 2017-11-18
  • 打赏
  • 举报
回复
try{} catch(Exception e) { e.Message就可以看到是哪里有问题 }
正怒月神 2017-11-17
  • 打赏
  • 举报
回复
实在不行,就写日志。 反正写日志本来就是所有程序必备条件之一。 特别是在正式环境上。不靠日志记录问题的程序,都不能说是合格的程序。 谁敢在正式环境调试呢?又很难重现正式环境的异常情况。 光靠冥想实在难以解决问题。这几乎是靠经验和直觉以及运气在改动。 并且还要冒着不停发布来测试的风险。 所以,你还是写日志吧。
qq_25020211 2017-11-17
  • 打赏
  • 举报
回复
我发布的时候, 配置的也是Debug模式 , 但是winform 我发布的时候也是选择的 Debug 模式 , 但是并不能把pdb 文件一起发布出来 . 怎么办?
qq_25020211 2017-11-17
  • 打赏
  • 举报
回复
谢谢大家 , 但是我的不是web项目 , 是winform啊 , 是不会获取到某一行的 .
njit_77 2017-11-17
  • 打赏
  • 举报
回复
winform下,捕获异常(UI和非UI)。你参考下wpf的http://blog.csdn.net/njit_77/article/details/70147183 应该可以解决了吧。(记得备份随exe生成的pdb文件)
圣殿骑士18 2017-11-17
  • 打赏
  • 举报
回复
引用 9 楼 qq_25020211 的回复:
我发布的时候, 配置的也是Debug模式 , 但是winform 我发布的时候也是选择的 Debug 模式 , 但是并不能把pdb 文件一起发布出来 . 怎么办?
手动复制所有dll和pdb,覆盖发布下的bin目录
帅猪儿 2017-11-16
  • 打赏
  • 举报
回复
我的建议是你在调试的时候对于可能为空的变量设置一个监控,多监控几个变量,随时发现变量值的变化情况,基本就能发现问题所在。
token不能为空 2017-11-16
  • 打赏
  • 举报
回复
网站没有pdb吧,我记得IIS会提示报错是第几行啊,要改某个配置
圣殿骑士18 2017-11-16
  • 打赏
  • 举报
回复
把pdb文件随同dll文件一起发布。vs的发布功能不会发布pdb
exception92 2017-11-14
  • 打赏
  • 举报
回复
声明一个对象变量从来都是实例化 出来,不是赋值为null。一个List集合,从来也是实例化出来,即便没数据也最好实例化。 想抓取到那个为null的对象 -》用Try最多给你定位到出错行,再把错误详细放到Mesage或者InnerException中
lovingkiss 2017-11-14
  • 打赏
  • 举报
回复
良好的编程习惯就是所有可能为Null的变量在使用前,一定要进行判断,不能有例外,不要把Try当成万能良药。。。
正怒月神 2017-11-14
  • 打赏
  • 举报
回复
发布后,IIS不会报具体错误。 这个要通过webconfig配置来显示具体错误。 具体怎么设置,你网上搜索一下就知道了。 一般来说,你的情况,如果调试没问题,发布有问题,那应该是数据为空导致的。
闭包客 2017-11-14
  • 打赏
  • 举报
回复
这种问题只能做日志,没有更好的办法。不过在编写代码的时候多加留意的话,是可以避免的,因为程序员可以知道那些语句会造成空引用的问题。

110,545

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧