2012-08-09 49 views
0

我想獲得一個對象數組並獲取基於該鍵的值。使用webmethod/pagemethod返回具有鍵/值對的對象Arrray

事情是這樣的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]; 

但這並不理想。

任何幫助,將不勝感激。

回答

相關問題