Imports Newtonsoft.Json.Linq
Imports Newtonsoft.Json.Converters
Imports Newtonsoft.Json.Serialization
<JsonProperty(PropertyName:="CardName", Order:=2)>
Public Property Name As String
<JsonProperty(PropertyName:="CardDescription", Order:=3, _
NullValueHandling := NullValueHandling.Ignore, DefaultValueHandling := DefaultValueHandling.IgnoreAndPopulate)>
<System.ComponentModel.DefaultValue("")>
Public Property Description As String
<JsonProperty(PropertyName:="CardCode", Order:=1)>
Public Property Code As String
Dim card = New Card() With { _
Dim json = JsonConvert.SerializeObject(card, Formatting.Indented)
Dim card2 = JsonConvert.DeserializeObject(Of Card)(json)
Console.WriteLine(JsonConvert.SerializeObject(card2, Formatting.Indented))
card2.Description = "My Description"
Console.WriteLine(JsonConvert.SerializeObject(card2, Formatting.Indented))