Can't get XmlDocument.SelectNodes to retrieve any of my nodes?

drazprod

New Member
I'm trying to parse an XML document. The document in question is an AppxManifest file.An example document looks like this:\[code\]<?xml version="1.0" encoding="utf-8"?><Package xmlns="http://schemas.microsoft.com/appx/2010/manifest" xmlns:build="http://schemas.microsoft.com/developer/appx/2012/build" IgnorableNamespaces="build"> <Identity Name="uytury" Publisher="hygj" Version="1.0.0.12" ProcessorArchitecture="neutral" /> <Properties> <DisplayName>jhjj</DisplayName> <PublisherDisplayName>bhhjb</PublisherDisplayName> <Logo>Assets\StoreLogo.png</Logo> </Properties> <Prerequisites> <OSMinVersion>6.2.1</OSMinVersion> <OSMaxVersionTested>6.2.1</OSMaxVersionTested> </Prerequisites> <Resources> <Resource Language="EN" /> </Resources> <Applications> <Application Id="App" Executable="gfg.exe" EntryPoint="gfg.App"> <VisualElements DisplayName="fdsf" Logo="Assets\Logo.png" SmallLogo="Assets\SmallLogo.png" Description="gfdsg" ForegroundText="light" BackgroundColor="#2672EC"> <DefaultTile ShowName="allLogos" WideLogo="Assets\WideLogo.png" ShortName="gfdsg" /> <SplashScreen Image="Assets\SplashScreen.png" BackgroundColor="#2672EC" /> <InitialRotationPreference> <Rotation Preference="portrait" /> <Rotation Preference="landscape" /> <Rotation Preference="portraitFlipped" /> <Rotation Preference="landscapeFlipped" /> </InitialRotationPreference> </VisualElements> <Extensions> <Extension Category="windows.search" /> <Extension Category="windows.shareTarget"> <ShareTarget> <DataFormat>Text</DataFormat> </ShareTarget> </Extension> </Extensions> </Application> </Applications> <build:Metadata> <build:Item Name="TargetFrameworkMoniker" Value="http://stackoverflow.com/questions/12607895/.NETCore,Version=v4.5" /> <build:Item Name="VisualStudio" Version="11.0" /> <build:Item Name="OperatingSystem" Version="6.2.9200.16384 (win8_rtm.120725-1247)" /> <build:Item Name="Microsoft.Build.AppxPackage.dll" Version="11.0.50727.1" /> <build:Item Name="Microsoft.Windows.UI.Xaml.Build.Tasks.dll" Version="11.0.50727.1" /> </build:Metadata></Package>\[/code\]I try to parse it like so:\[code\]var xml=new XmlDocument();xml.Load(myfile);var mgr=new XmlNamespaceManager(xml.NameTable);mgr.AddNamespace("", "http://schemas.microsoft.com/appx/2010/manifest");var nodes=xml.SelectNodes("Applications");\[/code\]However, after I execute this, \[code\]nodes\[/code\] will never contain anything. The xml document is loaded and such though. using \[code\]SelectNodes("//*")\[/code\] returns every node as expected. What is my problem here? I've also tried many variations on that XPath query such as
  • \[code\]/Package/Applications/Application\[/code\]
  • \[code\]Applications/Application\[/code\]
  • \[code\]Applications/*\[/code\]
Nothing appears to retrieve the single node though. Ideally, I'd like for nodes to contain all of the \[code\]Application\[/code\] nodes
 
Back
Top