LINQ к XML по сравнению с XmlReader

Писатель базы данных, вероятно, сделал

sql = "SELECT * FROM STUDENTS WHERE (STUDENT_NAME = '" + student_name + "') AND other stuff";
execute(sql);

, Если student_name является одним данным, который делает выбор с именем "Robert" и затем отбрасывает таблицу. "-" часть изменяет остальную часть данного запроса в комментарий.

5
задан John Saunders 20 July 2009 в 16:34
поделиться

3 ответа

PRO Linq to XML

  • Запрос XML-документов с тем же синтаксисом LINQ, который вы использовали для
  • Использует те же X-объекты, с которыми вы привыкли работать (XElement и т. Д.) )

Плюсы использования XmlReader

  • Более точный контроль над синтаксисом запроса (XPath, а не LINQ)

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

4
ответ дан 18 December 2019 в 13:17
поделиться

Я бы просто использовал LINQ to XML в Silverlight.

Единственное преимущество XmlReader перед LINQ заключается в том, что он не создает DOM в памяти, а скорее перемещается по существующему потоку. Однако эта разница действительно проявляется только в том случае, если вы можете начать обработку потока по мере его поступления, а не ждать прибытия всего контента. Это преимущество довольно сложно реализовать, и оно редко используется.

LINQ to XML гораздо более удобен для запросов и значительно более гибок в использовании, компромисс - дополнительная память.

8
ответ дан 18 December 2019 в 13:17
поделиться

LINQ to XML проще, однако он требует ссылки в System.XML.Linq, что увеличивает количество сборок, которые нужно будет загрузить в ваше приложение Silverlight. поэтому в зависимости от ситуации и ваших фидов иногда полезно использовать XMLReader.

2
ответ дан 18 December 2019 в 13:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: