Json.NET & VB.NET – How to Deserialize an Object ?

One of the ways to Deserialize an object to JSON string in VB.NET in the Json.NET is using the DeSerializeObject method defined in the JsonConvert method.

How to Deserialize an Object in VB.NET using Json.NET ?

Below is a sample code snippet demonstrating how you can deserialize an object from Json string to VB.NET object using Json.NET. It takes the json string that contains the employee information and deserializes it to the Employee class.

Imports Newtonsoft.Json

Module Module1

    Sub Main()
        Dim jsonTxt As String = "{'Name': 'Abundantcode'," & vbCr & vbLf & "  'IsPermanent': true," & vbCr & vbLf & " 'Departments': [" & vbCr & vbLf & "    'Technology'," & vbCr & vbLf & "    'Product Engineering'" & vbCr & vbLf & "  ]" & vbCr & vbLf & "    }"
        
        ' Deserialize an Json string to Employee object 
        Dim emp As Employee = JsonConvert.DeserializeObject(Of Employee)(jsonTxt)

        Console.WriteLine(emp.Name)
        Console.ReadLine()
    End Sub
    Public Class Employee
    Public Property Name() As String
        Get
            Return m_Name
        End Get
        Set
            m_Name = Value
        End Set
    End Property
    Private m_Name As String
    Public Property IsPermanent() As Boolean
        Get
            Return m_IsPermanent
        End Get
        Set
            m_IsPermanent = Value
        End Set
    End Property
    Private m_IsPermanent As Boolean
    ' Employee can belong to multiple departments
    Public Property Departments() As List(Of String)
        Get
            Return m_Departments
        End Get
        Set
            m_Departments = Value
        End Set
    End Property
    Private m_Departments As List(Of String)
End Class

End Module

The Deserialized object contains the following data.

image[3]