Webservice更新数据的问题?
请教各位:
使用Webservice时,你们是怎样更新数据的。
比如,客户端从服务器获得一个DataSet,修改一某一部分数据后,怎样传回到Webservice上反应到数据源。(难道只能用一条一条的SQL语句来完成吗?)
请各位帮帮忙!
可以一个循环对DATASET中发生变更的数据进行更新?
好像不行吧。
因为传过去的DataSet是一个全新的DataSet。其状态都初始化过了。
Update()时肯定会并发冲突。且还要改数据的RowState。
还有其它方法吗?(DTO是什么,可以用到吗?)
1.调用web service的web方法获得一个DataSet
2.在客户端对这个DataSet做更新操作
3.调用web service的另一个web方法Update,将客户端更新的DataSet传回web service,在方法Update重新到一个DataSet:mDs,然后使用mDs.Merge(pDs),更新mDs,mDa.Update(mDs);
public void Update(DataSet pDs)
{
//......
mDs.Merge(pDs);
mDa.Update(mDs);
}
CMIC(大象) :
谢谢你:其实我原来也试过。但好像不行。
比如:若删除了某一行,其实传给Webservice之前是Deleted状态。但到了Webservice时,却初始化成Unchanged了。你Merge()也不行啊。
不知是不是这样?
而这个例子
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/vsintro7/html/vbwlkCreatingDistributedWebApplicationWalkthrough.htm
讲的用类型化DataSet。不知非类型化DataSet这样行不行?