替换过时的System.Xml.XmlDataDocument?

时间:2010-09-20 15:34:51

标签: asp.net xml vb.net dataset transform

我在从.NET 2.0升级到.NET 4.0的webforms应用程序中有一个System.Web.UI.WebControls.Xml控件(Xml1)

我从代码隐藏页面得到两个警告,我想做点什么。

... 
Dim ds As DataSet = app.GetObjects
Dim xmlDoc As New System.Xml.XmlDataDocument(ds)
Xml1.Document = xmlDoc
Xml1.TransformSource = "~/xslt/admin_objectslist.xslt"
...

从第二行我收到警告:

  

'System.Xml.XmlDataDocument'已过时:'XmlDataDocument类将在以后的版本中删除。'。

从第三行我得到警告:

  

'Public Property Document As System.Xml.XmlDocument'已过时:'建议的替代方法是XPathNavigator属性。创建一个System.Xml.XPath.XPathDocument并调用CreateNavigator()来创建XPathNavigator。

建议的.NET 4.0替代品是什么?

2 个答案:

答案 0 :(得分:25)

ds.I也遇到了这个问题。以下是我提出的建议:

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(ds.GetXml());
xml1.XPathNavigator = xmlDoc.CreateNavigator();                
xml1.TransformSource = @"~/XSLT/LogEntryTransform.xslt";

希望它有所帮助。

答案 1 :(得分:2)

使用Linq2XML - 它比任何其他XML工具更强大......允许您像查询数据集或其他强类型数据源一样查询和创建/读取/更新/删除(CRUD)XML

一旦你开始使用Linq,你就永远不会回到旧的方式......它绝对是摇滚!