Замена устаревшего System.Xml.XmlDataDocument?
У меня есть элемент управления System.Web.UI.WebControls.Xml(Xml1) в приложении webforms, которое я обновил с .NET 2.0 до .NET 4.0
Я получаю два предупреждения из страницы с кодом, о которой я хотел бы что-то сделать.
...
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 будет удален в будущей версии".
И из третьей строки я получаю предупреждение:
'Документ публичного имущества, поскольку System.Xml.XmlDocument' устарел: 'Рекомендуемая альтернатива - это свойство XPathNavigator. Создайте файл System.Xml.XPath.XPathDocument и вызовите CreateNavigator(), чтобы создать XPathNavigator.
Какая рекомендуемая замена .NET 4.0 для этого?
Ответы
Ответ 1
ds.I столкнулся с этой проблемой и с 3.5. Вот что я придумал:
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(ds.GetXml());
xml1.XPathNavigator = xmlDoc.CreateNavigator();
xml1.TransformSource = @"~/XSLT/LogEntryTransform.xslt";
Надеюсь, что это поможет.
Ответ 2
Использовать Linq2XML - он более мощный, чем любой другой инструмент XML... позволяет вам запрашивать и создавать/читать/обновлять/удалять (CRUD) XML так же, как и набор данных или другой сильно типизированный источник данных.
Как только вы начнете с Linq, вы никогда не вернетесь к старым путям... это абсолютно потрясает!