这个问题,让Insus.NET花上不少时间与心机。
在项目中,Insus.NET是使用这个逻辑组件: 《程序与数据库之间的连接桥梁和逻辑处理》http://www.cnblogs.com/insus/p/4156735.html重新再次对这个组件进行测试与分析,还是没有问题。
使用代码来说明Insus.NET找到的原因:
上面的2个方法中,一个不需要传递参考,另一个需要。如果没有参数传入,我们需要为组件显式指定这句:sp.Parameters = null;
不能省略。偷懒的话,当组件有跑过其它带有参数的程序,然后再去跑没有参数传入的方法时,它会使用前一次的参数。这样引发的异常。
解决的方法,就是显式指定上面标记1的代码。