Как указано выше, какая разница между XElement.Load и XDocument.Load? Они, похоже, загружают файлы XML.
Какая разница между xelement.load и xdocument.load?
Ответ 1
Отличие состоит в том, что тип XElement
представляет фрагмент XML, а тип XDocument
представляет весь XML-документ со всеми связанными метаданными.
Тем не менее, для большинства простых случаев вы можете использовать их взаимозаменяемо.
Важно понимать тонкие различия в запросе между этими двумя типами, и для получения дополнительной информации о том, что я бы рекомендовал вам прочитать Запрос XDocument vs. Запрос XElement:
Когда вы загружаете документ через
XDocument.Load
, вы заметите что вы должны писать запросы несколько иначе, чем когда вы нагрузки черезXElement.Load
.
Ответ 2
Существует не так много сценариев, которые требуется создать XDocument. Вместо этого вы обычно можете создавать свои XML-деревья с корнем XElement node. Если у вас нет конкретного требования для создания документа (например, потому что вам нужно создать обработку инструкции и комментарии наверху уровне, или вы должны поддерживать документ типы), часто удобнее используйте XElement в качестве корня node.
Прямо от Допустимое содержание объектов XElement и XDocument. Что касается методов Load... они загружают контент в соответствующие объекты.
Ответ 3
При загрузке комментариев разница не будет загружена в случае XElement.Load() В то время как XDocument.Load() также получит комментарий
Следовательно, при работе с Xlinq мы должны пойти с XDocument