У меня есть множество XML файлов, которые имеют различные значения xsi: noNamespaceSchemaLocation. Это атрибуты в узле root документов. Мне нужно прочитать значения xsi: noNamespaceSchemaLocation из файлов. Это не должно быть сложно, но я изо всех сил.
Пример XML (это узел root):
<books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://www.purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:noNamespaceSchemaLocation="http://www.someSchemaLocation.xsd">
Это значение xsi: noNamespaceSchemaLocation , который я ищу.
Я могу сделать:
string blah = myXdocument.Root.GetNamespaceOfPrefix("xsi").NamespaceName;
, и это возвращает "http://www.w3.org/2001/XMLSchema-instance", как и следовало ожидать.
"http://www.w3.org/2001/XMLSchema-instance"
I ' мы пробовали:
string test = myXdocument.Root.Attribute("xsi" + "noNamespaceSchemaLocation").Value.ToString();
но это возвращает ноль.
Любая идея, пожалуйста?
В ролях blah до XNamespace:
blah
XNamespace
string test = myXdocument.Root.Attribute((XNamespace)blah + "noNamespaceSchemaLocation") .Value.ToString();