Link to home
Start Free TrialLog in
Avatar of cnxmax
cnxmax

asked on

No results from deserializing an XML string

I have a windows service built with VS 2012 vb.net 4.0

I want to desterilize this xml string:

<?xml version='1.0' encoding='UTF-8'?>
<response>
    <result numFound="96">
        <doc spendingCategory="Assistance">
            <record_count>2</record_count>
            <UniqueTransactionID>747cd6362dcfa5a2c1b2e49823b3fb5c</UniqueTransactionID>        </doc>
        <doc spendingCategory="Assistance">
            <record_count>3</record_count>
            <UniqueTransactionID>6dfae83f273289b0185ba25a821f7e27</UniqueTransactionID>        </doc>
        <doc spendingCategory="Assistance">
            <record_count>4</record_count>
            <UniqueTransactionID>3c713f5add6cc3b40042609a7ae5262c</UniqueTransactionID>        </doc>
    </result>
</response>


Into this structure:



    <XmlRoot("response")>
    Public Structure response
        Dim result As result
    End Structure
    Public Structure result
        Dim numFound As String
        <XmlArray>
        <XmlArrayItem("doc")>
        Dim doc As List(Of doc)
    End Structure



This is the code I am using for deserialization :


    Public Shared Sub DeSerialize_Response(ByVal sXML As String, ByRef oResponse As response)

        If String.IsNullOrEmpty(sXML) Then
            oResponse = Nothing
            Exit Sub
        End If

        Dim serializer As New Xml.Serialization.XmlSerializer(GetType(response), New XmlRootAttribute("response"))
        Dim settings As New XmlReaderSettings()

        Using textReader As New StringReader(sXML)
            Using xmlReader__1 As XmlReader = XmlReader.Create(textReader, settings)
                oResponse = DirectCast(serializer.Deserialize(xmlReader__1), response)
            End Using
        End Using

    End Sub

can you see why  my oResponse.result.doc object has a count of 0 and my numFound is "nothing"
ASKER CERTIFIED SOLUTION
Avatar of Meir Rivkin
Meir Rivkin
Flag of Israel image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of cnxmax
cnxmax

ASKER

here is the doc structure:

Public Structure doc
        Dim spendingCategory As String
        Dim record_count As String
        Dim UniqueTransactionID As String
end structure
Avatar of cnxmax

ASKER

thanks