Использует ли System.Xml MSXML? - PullRequest
11 голосов
/ 15 августа 2008

Я занимаюсь разработкой приложения на C #, которое использует несколько файлов XML и некоторые классы в System.Xml. Коллега настаивает на добавлении распространяемого MSXML6 в нашу установку вместе с .NET Framework, но я не думаю, что .NET Framework использует или нуждается в MSXML в любом случае. Мне хорошо известно, что использование MSXML из .NET не поддерживается, но я предполагаю, что теоретически возможно, что сам System.Xml обернет MSXML на низком уровне. Я не нашел ничего определенного в том, что .NET имеет свою собственную реализацию, но я также не могу найти ничего, что бы указывало на необходимость MSXML.

Помоги мне уладить спор. Использует ли System.Xml MSXML?

Ответы [ 5 ]

14 голосов
/ 15 августа 2008

System.Xml не использует MSXML6. Это отдельные механизмы обработки XML. Смотрите пост здесь: http://blogs.msdn.com/stan_kitsis/archive/2005/09/20/472185.aspx

1 голос
/ 16 августа 2008

System.Xml находится в базовой структуре и не зависит от MSXML 6.0, но имеет несколько общих API (парсер DOM, парсер SAX, выбор узла XPath).

0 голосов
/ 07 апреля 2010

.Net Framework использует MSXML6 для установки на WinXP SP2 и W2K3 SP2, только если MSXML6 не входит в комплект поставки. System.Xml отличается от MSXML6, хотя некоторые API имеют одинаковую подпись.

0 голосов
/ 15 августа 2008

Нет необходимости в том, чтобы такого рода вещи были предметом утомительных дебатов на рабочем месте, потому что исходный код для фреймворка доступен, и с минимальным объемом работы вы можете загрузить весь лот на свою машину. http://www.codeplex.com/NetMassDownloader

С помощью небольшого количества работы вы можете создать проект VS, который содержит весь исходный код фреймворка, что упрощает просмотр.

0 голосов
/ 15 августа 2008

Я думаю, что это необходимо для некоторых функций MsSql-XML, но System.Xml находится в базовой структуре.

Вы должны проверить ваш установщик на новой машине в любом случае, просто чтобы быть уверенным.

...