HttpResponseMessage response = await _client.PostAsync("/setup", httpContent);
response.EnsureSuccessStatusCode();
XmlSerializer serializer = new XmlSerializer(typeof(CXMLResponse));
string? strXmlResponse = await response.Content.ReadAsStringAsync();
//CXMLResponse punchOutResponse = await response.Content.ReadAsAsync<CXMLResponse>(); XXX: This returns NULL object
CXMLResponse punchOutResponse = null;
using (StringReader reader = new StringReader(strXmlResponse))
punchOutResponse = (CXMLResponse)serializer.Deserialize(reader);
CXMLResponse
definition:
[XmlRoot(Namespace = "", ElementName = "cXML", DataType = "string", IsNullable = false)]
public class CXMLResponse {...}
System.InvalidOperationException : There is an error in XML document (1, 1).
---- System.Xml.XmlException : Data at the root level is invalid. Line 1, position 1.
strXmlResponse
:
"{\"payloadID\":\"PayloadID\",\"timestamp\":\"2023-01-04T09:40:34.551199+00:00\",\"response\":{\"status\":{\"code\":\"OK\",\"text\":\"OK\"},\"punchOutSetupResponse\":{\"startPage\":{\"url\":\"https://www.kyberlife.com\"}}}}"