• 后台读取数据库中值,返回的值出乎意料,并引发了StackOverflowException


    今天调试代码的时候,有个页面后台抛出了StackOverflowException异常,

    这个异常主要是无限循环或无限递归引起的,但是我的那段代码怎么调试,都没有发现无限循环或递归

     很是郁闷,后来同事说可能你那对应到数据库字段的值有问题,

    于是我一个个调试取值,终于找到了原因,但是这根源似乎和循环、递归不搭边啊!

    这是之前的代码:

    View Code
     ArrayList list = new ArrayList();

    if (dt.Rows.Count > 0)

    {

    list.Add(dt.Rows[0]["address"]);

    }

    Add里变量是object,我就没把取出的值ToString;

    数据库中这个值是 null ,

    在断点调试的时候,取出的值竟然是 {} 两个字符,这明显有问题!

    解决方法:就是加上ToString

    我的疑问:数据库中值是null,怎么后台取出来是 {} 呢?

                  这个问题怎么会抛出那个异常?

    希望技术界的精英解疑答惑下



  • 相关阅读:
    Python中的返回函数与闭包
    Python的高阶函数小结
    Python的生成器Generator小结
    Vim插件YCM的安装
    用Vundle管理Vim插件
    声卡(Sound Card)基本概念
    Linux中Source的用法
    js 的执行过程
    mongoose@4.5.2的eachAsync bug
    [mongodb] MMAP 和wiredTiger 的比较
  • 原文地址:https://www.cnblogs.com/sonzalee/p/2210999.html
Copyright © 2020-2023  润新知