voglio ottenere questo lato client:

var o = {data: [ ['Shanghai', 23.7], ['Lagos', 16.1], ['Istanbul', 14.2], ['Karachi', 14.0] ]};


allora, lato server creo la classe privata
codice:
    Private Class Rootobject
        Public Property data As Object()()
    End Class
ho provato in due modi diversi. Creo due property protected
codice:
    Protected Property jsonString As String

    Protected Property jstSerializer As String
creo un'istanza della classe
codice:
Dim r As New Rootobject()

r.data = New Object(3)() {}

r.data(0) = New Object(1) {} : r.data(0)(0) = "Shanghai" : r.data(0)(1) = 23.7
r.data(1) = New Object(1) {} : r.data(1)(0) = "Lagos" : r.data(1)(1) = 16.1
r.data(2) = New Object(1) {} : r.data(2)(0) = "Istanbul" : r.data(2)(1) = 14.2
r.data(3) = New Object(1) {} : r.data(3)(0) = "Karachi" : r.data(3)(1) = 14.0
popolo quindi le due property
codice:
jsonString = JsonConvert.SerializeObject(r).Replace("""", "\""")

Dim j As New JavaScriptSerializer()
jstSerializer = j.Serialize(r).Replace("""", "\""")

lato client ho due stringhe che trasformo in oggetti

codice:
var t = "<%=jsonString %>";
var t1 = "<%=jstSerializer %>";

var o = JSON.parse(t);
var o1 = JSON.parse(t1);
collaudo
codice:
alert(o.data[1][1]);
alert(o1["data"][1][1]);

si capisce? era questo che si voleva?