Это зависит от того, сколько изменений требуется, насколько велики данные и знакомы ли вы с xslt. Если «не» до последнего, просто используйте XDocument
и т. Д. (В последний раз, когда я запускал профиль, XDocument
был быстрее, чем XmlDocument
для моих данных - запустите свои собственные тесты). Используйте XDocument.Load
/ XDocument.Parse
, найдите свой узел, отредактируйте его и сохраните.
Если вы должны использовать xslt, тогда XDocument
на самом деле не вариант; как только вы загрузите его в XmlDocument
, вы также можете остаться с XmlDocument
- я бы не рекомендовал разбирать его в секунду DOM.
Конечно, это заставляет задуматься: зачем модифицировать xml вне xslt, если вы собираетесь использовать xslt; возможно просто перевести во время xslt?
Чтобы получить 100% точный ответ для ваших данных , вам, конечно, нужно его профилировать. Но такие вещи, как правильное использование группирующих конструкций xslt, часто дают намного большую разницу, чем XmlDocument
против XPathDocument
.