オブジェクトの配列を取得し、キーに基づいて値を取得したいと思います。
このjavascriptのようなもの:
PageMethods.GetProducts(function(results) {
   var productName  = results[0].name;
});
コードビハインドでこれを試しましたが、結果に配列の配列が表示されます。
VB
<WebMethod()>
    Public Shared Function GetProducts() As ArrayList
        Dim products As New ArrayList
        Dim prAdptr As New DataSet1TableAdapters.ProductsTableAdapter
        Dim prTbl As DataSet1.ProductsDataTable = prAdptr.GetData
        Dim prRow As DataSet1.ProductsRow
        For Each prRow In prTbl
            Dim product As New Collection
            product.Add(prRow.ProductID, "id")
            product.Add(prRow.ProductName, "name")
            products.Add(product)
        Next
        Return products
    End Function
c#
[WebMethod()]
public static ArrayList GetProducts()
{
    ArrayList products = new ArrayList();
    DataSet1TableAdapters.ProductsTableAdapter prAdptr = new DataSet1TableAdapters.ProductsTableAdapter();
    DataSet1.ProductsDataTable prTbl = prAdptr.GetData;
    DataSet1.ProductsRow prRow = default(DataSet1.ProductsRow);
    foreach ( prRow in prTbl) {
        Collection product = new Collection();
        product.Add(prRow.ProductID, "id");
        product.Add(prRow.ProductName, "name");
        products.Add(product);
    }
    return products;
}
したがって、キーに基づいて値を取得することはできません。私は次のように値の位置を参照できることを知っています:
results[0][0];
しかし、これは理想的ではありません。
どんな助けでもいただければ幸いです。