Привет, у меня есть файл xml (который на самом деле является файлом msbuild), который использует другое пространство имен.
<?xml version="1.0" ?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(key)'=='1111'">
<Key>Value</Key>
</PropertyGroup>
</Project>
Но проблема в том, что я не могу использовать SelectSingleNode с этим файлом из-за
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
Я полагаю, что это связано с тем, что пространство имен по умолчанию (необходимое для метода) исчезло из-за приведенного выше xmlns. Тогда я думаю, что мне просто нужно добавить необходимый для этого.. Но мои попытки не увенчались успехом. Не могли бы вы дать мне быстрый пример, как это сделать?
Вот как я это сделал. (Я также пытался добавить несколько пространств имен, но безуспешно..)
XmlDocument xml = new XmlDocument();
xml.Load("ref.props");
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xml.NameTable);
nsmgr.AddNamespace("msbld", "http://schemas.microsoft.com/developer/msbuild/2003");
XmlNode platform_node
= xml.SelectSingleNode("//msbld:PropertyGroup[contains(@Condition, '1111')]", nsmgr);