Подтвердить что ты не робот

Какая разница между xelement.load и xdocument.load?

Как указано выше, какая разница между XElement.Load и XDocument.Load? Они, похоже, загружают файлы XML.

4b9b3361

Ответ 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