Hi @wantto wantto ,
It is better to use LINQ to XML API. It is available in the .Net Framework since 2007.
XML
<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
Consent="urn:oasis:names:tc:SAML:2.0:consent:obtained">
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
</samlp:Response>
c#
void Main()
{
const string fileName = @"e:\Temp\wantto.xml";
XDocument xdoc = XDocument.Load(fileName);
XNamespace ns = xdoc.Root.GetNamespaceOfPrefix("samlp");
XElement xelem = xdoc.Descendants(ns + "StatusCode").FirstOrDefault();
Console.WriteLine("StatusCode: {0}", xelem.Attribute("Value").Value.Split(':').Select(sValue => sValue).ToArray().Last());
}
Output
StatusCode: Success