2009-11-17 4 views
4

У меня мало вопросов по сериализации XML и LINQ to XML.Сериализация XML и LINQ to XML

Когда мы используем XML-сериализацию и LINQ to XML? Укажите тип ситуаций или сценариев использования XML-сериализации и LINQ to XML.

В чем разница между XML-сериализацией и LINQ to XML?

Каковы преимущества использования XML-сериализации над LINQ to XML и наоборот.

Я прочитал в msdn и различных блогах о DOM vs LINQ to XML, но не смог найти много информации о XML Serialization vs LINQ to XML. Было бы здорово, если мы сможем объединить все методы XML в .NET с плюсами и минусами.

Спасибо за вашу помощь заранее.

С уважением,

Sushma

ответ

10

Они совершенно разные вещи:

  • XML сериализации позволяет получить XML представление всего объекта, и преобразовать его обратно в объект. Он используется, когда вам нужно сохранить текущее состояние объекта или перенести его в удаленное местоположение.

  • LINQ to XML (или классы XML платформы .NET) используется для создания и обработки XML-файлов, полученных «как есть» и не привязанных непосредственно к объектам, таким как данные из RSS-каналов.

+1

Да, основное отличие состоит в том, что при сериализации вы работаете со всем объектом или документом (вы не можете просто сериализовать его часть), но с linq to sql вы можете манипулировать, управлять вещами, получать только релевантную информацию, не весь объект. –

1

Я полностью согласен с ответом Konamiman. Однако вы также не должны забывать о том, что во время обхода навигации, если хотите, мы обычно десериализуем XML. Это немного изменяет ситуацию.

Я бы сказал, что LINQ to XML - это, в первую очередь, стратегия обхода, которая также может быть выполнена с целью десериализации.