2017-10-16 10 views
0

jsonに変換すると、以下のような結果が得られます。vb.net 2010で多次元配列を作成する

{{"name":"first_example_1"}, {"name": "second_example_1"}} 

私はこの

dim x as jArray 
x.add("first_example_1") 
x.add("second_example_1") 

を使用してみましたが、私はこの

{"firstname_example_1", "second_example_1"} 

どのようにインデックスを追加することができますを取得するJSONに上記を変換しようとすると?

答えて

1

この

 Dim jArray(1) As Object 
     jArray(0) = New With {Key .name = "second_example_1"} 
     jArray(1) = New With {Key .name = "firstname_example_1"} 
     Dim serializer As New JavaScriptSerializer() 
     Dim result As String 
     result = serializer.Serialize(jArray) 

を試してみて、Imports System.Web.Script.Serialization

+0

あなたの答えを読む前に私のコードを変更しました。あなたのコードは私の質問に基づいて動作し、私が望む正確な結果を生成します。しかし、私は苦労してオブジェクトを直列化していましたが(私がVB.netの初心者のために)、私のリファレンスでsystem.web.script.serializationを持っていないので、なぜ私は '私の参照でそれを見つける、私はsystem.web.servicesがあります。ありがとうございます。それは有り難いです。 –

0

に@styx作品の上記の答えを忘れてはいけませんが、私はすでに私のコードを変更しています。この回答は追加情報です。

私は私がこれを書いたシリアライズするPerInfo

public class PerInfo 
    public firstname 
    public lastname 
end class 

という名前のクラスを作成しました。

dim x as new PerInfo 
x.firstname = textbox1.text 
x.address = textbox2.text 

dim res as string = JsonConvert.SerializeObject(x) 
' the above code produces my desired result which is 
' {"firstname":"jeo","address":"GSC"} 

デシリアライズするにはこれを行いました。このことができます

Dim t As PerInfo = JsonConvert.DeserializeObject(Of PerInfo)(x) 
'I can now access the `firstname` and `address` via 
' t.firstname and t.address 

MsgBox(t.firstname & "===" & t.address) 

希望...

PS:私は手動で私が正しい場合.net 2.0フレームワークを使用してPCとの下位互換性のために追加の参照を経由してNewtonsoft.Json.dll バージョンNet 2.0を追加しました。これで私を修正してください。