Почему мне нужно указать Менеджер пространства имен для запросов XPath

При запросе XMLDocument мне нужно передать менеджер пространства имен с каждым вызовом. Раздражает действительно, но это просто то, с чем мы живем. Действительно раздражающий бит создает менеджер пространства имен в первую очередь.

XmlNamespaceManager nsMan = new XmlNamespaceManager(invoiceTextReader.NameTable);
nsMan.AddNamespace("", "urn:oasis:names:specification:ubl:schema:xsd:Invoice-2");
nsMan.AddNamespace("pb", "urn:pierbridge:names:specification:pbl:schema:xsd:tpn-1");
...

Чтобы создать его, мне нужно не только сеять экземпляр с именем, но затем укажите каждое пространство имен вручную. Это кажется мне так глупо. Какой смысл передавать таблицу имени, если мне нужно идти и добавить их все вручную. И какой смысл передачи таблицы имени, если я должен передать менеджер пространства имен назад для каждого запроса. Почему это не может просто построить менеджер пространства имен от того, что содержится в документе прямо с летучей мыши. Похоже, очень много Faffing, просто чтобы запустить запрос.

5
задан Daniel Hilgarth 13 September 2011 в 15:26
поделиться