调用了一个web service中的提交数据库更新的方法,为什么不行
我在程序里调用一个web service中的提交数据库更新的方法,为什么不行?
我要对后台数据库中的几张表进行维护,我做了一个Web service 服务,其中包括对前台修改数据以后将修改打包成数据集传回来后对数据库进行提交更新的操作的webmethod
具体情况是这样的:
我在vs .net 中使用数据适配器向导生成了相应表的数据集,以及相应的增删改的存储过程(都是自动生成的)
我的webmethod是这样写的:
[WebMethod]
public void ChangeYouQingData(System.Data.DataSet changedDataSet,string whichtable1)
{
switch(whichtable1)
{
case "category":
{
categoryDataAdapter.Update(changedDataSet);
break;
}
case "info":
{
infoDataAdapter.Update(changedDataSet);
break;
}
case "postal":
{
postalDataAdapter.Update(changedDataSet);
break;
}
case "broadcast":
{
broadcastDataAdapter.Update(changedDataSet);
break;
}
case "program":
{
programDataAdapter.Update(changedDataSet);
break;
}
default:return ;
}
changedDataSet.AcceptChanges();
}
可是为什么每次调用的时候都会出错:
未处理的“System.Web.Services.Protocols.SoapException”类型的异常出现在 system.web.services.dll 中
其他信息:System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.Data.OleDb.OleDbException: 过程 'PostalDeleteCommand' 需要参数 '@Original_Po_id',但未提供该参数。
at System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows, DataTableMapping tableMapping)
at System.Data.Common.DbDataAdapter.Update(DataSet dataSet, String srcTable)
at System.Data.Common.DbDataAdapter.Update(DataSet dataSet)
at SMSYouQingService.YouQing.ChangeYouQingData(DataSet changedDataSet, String whichtable1) in c:\inetpub\wwwroot\smsyouqingservice\youqingservice.asmx.cs:line 533
--- 内部异常堆栈跟踪的结尾 ---
为什么会这样啊,高手请指教
问题点数:0、回复次数:4Top
1 楼xiaodele(小得乐)回复于 2003-12-04 16:53:00 得分 0
Table的字段时候与数据库中的一致,或者少了Original_Po_idTop
2 楼o1o(两蛋一枪)回复于 2003-12-04 19:49:51 得分 0
对应关系IDTop
3 楼gujunyan(缘份擦肩而过)回复于 2003-12-04 21:08:03 得分 0
dataset中的表缺定段.Top
4 楼jungle_sj(蓝天)回复于 2003-12-05 14:05:29 得分 0
能不能说得详细一点啊,还是不太明白:(
Top




