JSON文字列にシリアル化するクラスがあります。そのために、私はNewtonsoft.Jsonを使用しています
次のようになります。
<JsonObject()>
Public Class MyClass
Private _a;
Private _b;
Public Sub New(ByVal an As String, ByVal b as String)
_a = a
_b = b
End Sub
Public Property a As String
Get
Return _a
End Get
Protected Set(value As String)
_a = value
End Set
End Property
Public Property b As String
Get
Return _b
End Get
Protected Set(value As String)
_b = value
End Set
End Property
End Class
私はそれらをリストに入れ、これをシリアル化します:
JsonConvert.SerializeObject(listMyObject)
ただし、JSON文字列のすべてのプロパティが必要なわけではない場合があります。コンストラクターに渡したプロパティをシリアル化することはできますか?この場合のように?:
Public Sub New(ByVal an As String)
_a = a
End Sub
Newtonsoft json Serialize ConditionalPropertyを確認してください。
C#でのこの回答は、実際の動作を示しています。
あなたの場合、
<JsonObject()>
Public Class MyClassName
Public Property A As String
Private ReadOnly _shouldSerializeA As Boolean
Public Function ShouldSerializeA() As Boolean
Return _shouldSerializeA
End Function
Public Property B As String
Private ReadOnly _shouldSerializeB As Boolean
Public Function ShouldSerializeB() As Boolean
Return _shouldSerializeB
End Function
Public Sub New(ByVal a As String, ByVal b As String)
Me.A = a
Me.B = b
Me._shouldSerializeA = True
Me._shouldSerializeB = True
End Sub
Public Sub New(ByVal a As String)
Me.A = a
Me._shouldSerializeA = True
Me._shouldSerializeB = False
End Sub
End Class
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加