У меня есть приложение, которое непрерывно получает поток XML и затем использует его для обработки некоторой информации. Пока у меня было только одно пространство имен для всех потоков, и я сделал это легко, как
doc = new XPathDocument(ds + "/probe");
navigator = doc.CreateNavigator();
ns = new XmlNamespaceManager(navigator.NameTable);
ns.AddNamespace("m", "urn:namsp.org:namSpDev:1.1");
nodes = navigator.Select("//m:DataItem", ns);
while (nodes.MoveNext())
{
node = nodes.Current;
}
Но теперь у меня проблема. Есть еще один поток, который имеет пространство имен
"urn:namsp.org:namSpDev:1.2"
Так что в моем приложении я должен проверить поток и посмотреть, какое это пространство имен, и только тогда я могу добавить пространство имен приложения, используя
ns.AddNamespace("m", "urn:namsp.org:namSpDev:1.1");
Как мне это сделать?
Я попытался преобразовать doc.toString () и использовал .contains (), чтобы проверить, проходит ли что-нибудь из этого, но это не работает.