所以我整天都在寻找问题所在。如果我不使用XML将数据加载到我的DataSet中(即只是直接从数据库或某些数据库中获取),那么我就没有任何问题。
但是,我必须从XML文件中读取它,我目前正在使用DataSet.ReadXML(...)来实现这一点。 XML是使用DataSet.writeXML编写的(在通过WCF服务通过线路传输之前)。
以下是它的加载方式:
XmlTextReader xmlreader = new XmlTextReader(odhdotnet.GetAllMetadataXML(), XmlNodeType.Element, null);
AllData.ReadXml(xmlreader);
对从XML加载的数据使用DataSet会破坏所有DataView.RowStateFilter功能。
DataViewRowState.ModifiedCurrent不会生成所有已修改行的视图,因为这些行的RowVersion永远不会设置为“current”以外的任何行。
我不知道这里发生了什么,或者为什么会发生这种情况。有任何想法吗?我的感觉是,通过XML加载数据,DataSet由于某种原因缺少什么?
最值得赞赏的任何帮助!
亲切的问候, 河豚
答案 0 :(得分:1)
您是否尝试过将XmlWriteMode
设置为XmlWriteMode.DiffGram
?