VB Json Array in Array

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von AnimalMother.

    VB Json Array in Array

    Hi Leute ich will mich auf eine Website einloggen, dazu muss ich ein Json String Posten.
    Jetzt hab ich das Problem das der Json String ein Array im Array hat und ich nicht weiss wie ich das Problem lösen kann.

    So muss der Json String aussehen

    Quellcode

    1. {"id":3,"jsonrpc":"2.0","method":"call","params":["database_api","get_accounts",[["myusername"]]]}


    Meine Propertys sehen folgendermaßen aus

    VB.NET-Quellcode

    1. Friend Class LoginPostHeader
    2. Public Sub New()
    3. End Sub
    4. Public Property id As Integer
    5. Public ReadOnly Property jsonrpc As String = "2.0"
    6. Public ReadOnly Property method As String = "call"
    7. Public Property params As Object() = {"database_api", "get_accounts", "[[myusername]]"}
    8. End Class


    und das bekomme ich mit meiner Methode raus (ich benutze die Newtonsoft api)

    Quellcode

    1. {"id":3,"jsonrpc":"2.0","method":"call","params":["database_api","get_accounts","[[myusername]]"]}


    Hab schon das I-Net durchforstet und weiss nicht mehr weiter stehe komplett auf dem Schlauch, kleines Problem große Uhrsache :S

    AnimalMother schrieb:

    So muss der Json String aussehen


    So siehst er aus, wenn du für das 3. Object in params einen mehrdimensionalen Array nimmst.

    VB.NET-Quellcode

    1. Imports Newtonsoft.Json
    2. Public Class Form1
    3. Public Class Example
    4. Public Property id As Integer
    5. Public Property jsonrpc As String
    6. Public Property method As String
    7. Public Property params As Object()
    8. End Class
    9. Sub SerializeObject()
    10. Dim ex As New Example
    11. ex.id = 3
    12. ex.jsonrpc = "2.0"
    13. ex.method = "call"
    14. ex.params = New Object(2) {}
    15. ex.params(0) = "database_api"
    16. ex.params(1) = "get_accounts"
    17. ex.params(2) = New String(,) {{"myusername"}}
    18. Dim json As String = JsonConvert.SerializeObject(ex)
    19. MessageBox.Show(json)
    20. End Sub
    21. End Class
    Cloud Computer? Nein Danke! Das ist nur ein weiterer Schritt zur totalen Überwachung.
    „Wer die Freiheit aufgibt, um Sicherheit zu gewinnen, wird am Ende beides verlieren.“
    Benjamin Franklin