troubleshooting Question

Deserialize XML string to object containing array of elements

Avatar of cnxmax
cnxmax asked on
3 Comments1 Solution571 ViewsLast Modified:
I am using vs 2012,, .net 4.0 and I need to deserialize the following XML:

<?xml version="1.0" encoding="utf-8"?>
        <dts>2012-12-29 16:00:13</dts>

I created the following structure (in Class Pong):

    <Serializable> Public Structure data
        Public head As Head
        Public status As String
        Public response As Response
    End Structure
    <Serializable> Public Structure Head
        Public dts As String
    End Structure
    <Serializable> Public Structure Response
        Public bots As Bots
    End Structure
    <Serializable> Public Structure Bots
        Public item As Item()
    End Structure
    <Serializable> Public Structure Item
        Public id As String
        Public url As String
        Public priority As String
        Public reporting As String
        Public instances As String
    End Structure

I use the following to deserialize the XML into the structure:

    Dim oMasterData As New
    ReDim oMasterData.response.bots.item(100)
    Dim serializer = New XmlSerializer(GetType(
    Using reader = New StringReader(sXML)
        oMasterData = DirectCast(serializer.Deserialize(reader),
    End Using

I get the correct information in oMasterData for head.dts and for status but
oMasterData.response.bots.item comes back with a length=0.

I found many examples of similar deserializations but each falls short when
the main structure has several elements and one element is an "array of a structure".

Any code examples (either vb or C#, C++) would be appreciated.
Join the community to see this answer!
Join our exclusive community to see this answer & millions of others.
Unlock 1 Answer and 3 Comments.
Join the Community
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 3 Comments.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros