服务器无法处理请求。 ---> 生成 XML 文档时出错。 ---> 不应是类型 System.DBNull

喝水不喝茶 2015-12-29 09:17:54
各位大哥麻烦看下是调用这个存储过程时出的错实在搞不清楚是哪里出了问题,传正确的有返回值的参数就不会报错。
...全文
374 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
引用 12 楼 ligyu110 的回复:
粘贴处理这个类看看OracleParameter
还是不行呀
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复

                OracleParameter[] parm = new OracleParameter[6];
                for (int i = 0; i < 3; i++)
                {
                    parm[i] = new OracleParameter();
                    parm[i].OracleType = OracleType.VarChar;
                    parm[i].Size = 20;
                    parm[i].Direction = ParameterDirection.Input;
                }
                parm[0].ParameterName = "strLocno";
                parm[0].Value = CPermissionManagement.m_strLocNo;

                parm[1].ParameterName = "strOwner_No";
                parm[1].Value = m_OwnerNo;

                parm[2].ParameterName = "strSerialNo";
                parm[2].Value = this.txtSerial_No.Text.Trim();

                parm[3] = new OracleParameter();
                parm[3].ParameterName = "nCheckBoxNum";
                parm[3].OracleType = OracleType.Float;
                parm[3].Direction = ParameterDirection.Output;
                parm[3].Size = 30;

                parm[4] = new OracleParameter();
                parm[4].ParameterName = "nSumBoxNum";
                parm[4].OracleType = OracleType.Float;
                parm[4].Direction = ParameterDirection.Output;
                parm[4].Size = 30;

                parm[5] = new OracleParameter();
                parm[5].ParameterName = "strOutMsg";
                parm[5].OracleType = OracleType.VarChar;
                parm[5].Direction = ParameterDirection.Output;
                parm[5].Size = 300;
老李家的小二 2015-12-29
  • 打赏
  • 举报
回复
粘贴处理这个类看看OracleParameter
老李家的小二 2015-12-29
  • 打赏
  • 举报
回复
OracleParameter[] parm = new OracleParameter[6]; OracleParameter p; for(int i = 0; i < 3; i++) { p = new OracleParameter(); p.OracleType = OracleType.VarChar; p.Size = 20; p.Direction = ParameterDirection.Input; parm[i] = p; }
jerry_zjnb 2015-12-29
  • 打赏
  • 举报
回复
引用 8 楼 niwota568 的回复:
[quote=引用 7 楼 jerry_zjnb 的回复:] 出现这个异常一般是XML序列化失败,看异常描述是因为序列化的对象中包含不支持序列化的类型,例如System.DBNull。 由于没有提供ExeProc方法的代码,所以没办法更深入地定义问题。
是不是我的传值有问题,如果是输入正确的,有返回数据就不报错,一但随便输入就会报错[/quote] 那很明显是错误处理部分返回的代码中包含不可序列化的对象,具体要看错误处理代码。
洋洋六号 2015-12-29
  • 打赏
  • 举报
回复
是不是你上面已经申请空间了,然后下面的时候你再次new的时候会出错啊?不确定,只是建议一下。。
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
引用 7 楼 jerry_zjnb 的回复:
出现这个异常一般是XML序列化失败,看异常描述是因为序列化的对象中包含不支持序列化的类型,例如System.DBNull。 由于没有提供ExeProc方法的代码,所以没办法更深入地定义问题。
是不是我的传值有问题,如果是输入正确的,有返回数据就不报错,一但随便输入就会报错
jerry_zjnb 2015-12-29
  • 打赏
  • 举报
回复
出现这个异常一般是XML序列化失败,看异常描述是因为序列化的对象中包含不支持序列化的类型,例如System.DBNull。 由于没有提供ExeProc方法的代码,所以没办法更深入地定义问题。
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
帮忙分析下问题出在哪就好啦
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
大神们,帮忙看看呀
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
引用 3 楼 unearth 的回复:
逐步到里面去看一下。
就是调试不进去
孤独de猫 2015-12-29
  • 打赏
  • 举报
回复
逐步到里面去看一下。
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
引用 1 楼 starfd 的回复:
你debug下,你这个只返回了errorMessage,没返回具体的stace

是引用了Webservice

只知道是这里抛的异常,调试不进去
  • 打赏
  • 举报
回复
你debug下,你这个只返回了errorMessage,没返回具体的stace
喝水不喝茶 2015-12-29
  • 打赏
  • 举报
回复
已经解决了,谢谢各位
老李家的小二 2015-12-29
  • 打赏
  • 举报
回复
OracleParameter 粘贴出来这个类的代码看看

110,568

社区成员

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

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

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