在使用SqlHelper.cs 编写数据访问层时如果你这样写:
SqlHelper.ExecuteScalar(DBH.ConnStr, "UserClass_CheckClassId", Code, ClassID)
"UserClass_CheckClassId" 是存储过程名称,
那么你要注意了,这个匿名指定参数调用,在SqlHelper里采用SqlCommandBuilder.DeriveParameters(Command)方法来获取具体参数并缓存起来, 因此当你调整(或修改)存储过程 调用参数时记的清空这个(可以修改下web.config文件 比方打个空格之类的)
去年就碰到了,后来找到原因,没记下来,一年后又碰到了,郁闷了半天,查看sqlHelper.cs代码是才发现里面有自己写的一个ClearCache方法,才想起来, 于是马上来写下来,防止后年又郁闷半天