0
我正在开发解决方案deserialize
SAML
xml
。但是,面对一个错误说<Issuer xmlns ='urn:oasis:names:tc:SAML:2.0:assertion'> was not expected
“发行人的xmlns = '金塔:绿洲:名称:TC:SAML:2.0:断言' 没有 预期”
代码
XmlNamespaceManager ns = new XmlNamespaceManager(SAMLXML.NameTable);
ns.AddNamespace("saml", "urn:oasis:names:tc:SAML:2.0:assertion");
XmlElement xeAssertion = SAMLXML.DocumentElement.SelectSingleNode("saml:Assertion",ns) as XmlElement;
AssertionType assertionType = new AssertionType();
XmlSerializer serializer = new XmlSerializer(assertionType.GetType(),ns.DefaultNamespace);
MemoryStream ms = new MemoryStream(Encoding.UTF32.GetBytes(xeAssertion.InnerXml.ToString()));
ms.Position = 0;
ms.Seek(0, SeekOrigin.Begin);
AssertionType assertion = (AssertionType)serializer.Deserialize(ms);
return assertion;
是'从某些库AssertionType'?或者是你自己的班级?看起来它不处理''元素。 –
这是一个基于SAML XML响应的XSD.exe生成的类。点击https://rnd.feide.no/2007/12/10/example_saml_2_0_request_and_response/举例 – abn
您可以粘贴SAMLXML的内容 –