2017-09-04 16 views
0

ネストしたオブジェクトからJSONを文字列にシリアライズしようとしています。私は「行」リストの周りの角括弧が欠落しているので、それが拒否されたAPIにシリアル化された文字列を渡すしようとすると、しかし、私はしかし、オブジェクト内の配列JSONとVB.NETの連携

Class RequestTaxes 
    Public Property usrname As String 
    Public Property pswrd As String 
    Public Property isAudit As Boolean 
    Public Property currn As String 
    Public Property lines() As TaxLines 
End Class 


Class TaxLines 
    Public Property debCredIndr As Integer 
    Public Property goodSrvCd As String 
    Public Property grossAmt As Double 
    Public Property lnItmId As String 
    Public Property qnty As Double 
    Public Property trnTp As Integer 
    Public Property accntDt As DateTime 
    Public Property custVendName As String 
    Public Property custVendCd As String 
    Public Property orgCd As String 
End Class 

に問題を抱えています。

Newtonsoftを使用している人は誰ですか?

Dim Settings As New JsonSerializerSettings 
Settings.NullValueHandling = NullValueHandling.Ignore 
Dim InputString As String = JsonConvert.SerializeObject(message, Settings) 

「メッセージ」はタイプRequestTaxes

+0

正確なエラーメッセージは何を行うために必要な?私は本当にブラケットと関係があるとは思わない。 – Plutonix

+1

これは、[Can not JsonはVB.netでYoutubeデータをデシリアライズできない](https://stackoverflow.com/a/45388173/3744182)と重複する可能性がありますが、 JSONと、メッセージ、トレースバック、例外タイプ、内部例外を含む例外の完全な 'ToString()'出力を確認してください。 – dbc

+1

その質問を見ると、それは私たちが見ることができるものと密接に関連していますが、おそらくこれは逐次対vsデシリアライズであるため、偽者ではありません。ニースを見つける。 –

答えて

0

私は実際に

Public Property lines As List(of TaxLines) 
1

の移入されたオブジェクトが含まれている私は、あなたがあなたの財産は、ビットをオフに宣言があると思います。

Public Property lines() As TaxLines

あなたTaxLinesは、単一のインスタンスしか、ない配列であることを意味

Public Property lines As TaxLines

に相当します。

あなたはそのような行の末尾に括弧を追加する必要があります。

Public Property lines() As TaxLines()

関連する問題