日期:2014-05-20  浏览次数:21102 次

关于验证datatable是否被修改的问题
举个例子: 会员管理的修改  我先将会员详细信息存在一个datatable  User里面   然后 界面上的控件与该datatable一一绑定, 在用户保存的时候  验证该datatable是否被修改 来判断是否需要操作数据库  
目前 我所知道的  就是要逐行判断user表 但是这样的话  我还不如直接操作一次数据库
想问的是vs有没有提供什么简便的方法 来验证一个表是否有改变...

------解决方案--------------------
你可以将每个值都存在隐藏框里,这样比对时不用再查询数据库了,只要比对隐藏框的值就好了。少一次连数据库的操作,效率会提高。
------解决方案--------------------
if(datatable1.GetChanges()==null)
   //没有增删改
else
   //有增删改

如果只判断是否有修改


if(datatable1.GetChanges(System.Data.DataRowState.Modified)==null)
   //没有修改
else
   //有修改
------解决方案--------------------
其实当你调用adapter.Update(dt)时,Net已经就作了你上述的工作,dt中的每一行DataRow都有DataRowState,提交时会逐个判断