要想还现实的话,你过滤的时候就不要过滤修改的列。
不知道你怎么会出现异常,我给一段我更新的代码:DataTable dt1=new DataTable();
dt1=dv.Table.GetChanges();

SqlCommandBuilder cb=new SqlCommandBuilder(da);
da.Update(dt1);没出现任何异常