I\'ve browsed the questions with similar titles but cannot seem to find exactly what I\'m looking for,if anyone spotted a similar question kindly point me to the thread.Here is
Here's what I ended up using from the Scott Hanselman article
public static IDictionary<string, string> GetXmlNamespaces(string sourcePath)
{
XDocument y = XDocument.Load(sourcePath);
XPathNavigator foo = y.CreateNavigator();
foo.MoveToFollowing(XPathNodeType.Element);
return foo.GetNamespacesInScope(XmlNamespaceScope.All);
}
Usually the namespace I want is in the value of the 2nd element of the dictionary which I access like so:
var namespace = GetXmlNamespaces("myfile.xml").ElementAt(1).Value;
Thats because the default namespace is blank / not specified. I'd guess that you want GetNamespaceOfPrefix:
string elementNamespace = elemet.GetNamespaceOfPrefix("xs").NamespaceName;
Although that doesn't make a whole lot of sense to be honest - I'm not really sure what you are after.
Scott Hanselman has an article on how to get the namespaces:
http://www.hanselman.com/blog/GetNamespacesFromAnXMLDocumentWithXPathDocumentAndLINQToXML.aspx