2009-07-17 4 views
6

Je voudrais imprimer les données, à des fins de débogage.ASP print out array

Format des données serait comme ce

cntryCode  = resArray("COUNTRYCODE") 
    business  = resArray("BUSINESS") ' Payer's business name. 
    shipToName  = resArray("SHIPTONAME") 

l'resArray se composent de plus de 10 enregistrements lui-même.

J'ai essayé d'imprimer, mais j'échoue.

version 1 ne fonctionne pas

public sub prArray (myarr) 
    Dim x, ResponseData 
    For x = 0 to myarr.Count 
     ResponseData = ResponseData & myarr.Key(x) & " = " & myarr.Item(x) & "<br>" 
    Next 
    Response.Write ResponseData 
end sub 

version 2 ne fonctionnait pas

public sub prArray (myarr) 
    Dim x, ResponseData 
    For x = 0 to UBound(myarr) 
     ResponseData = ResponseData & myarr(x) & " = " & myarr(x) & "<br>" 
    Next 
    Response.Write ResponseData 
end sub 

Je crois que a une certaine façon d'imprimer en asp classique

+0

Quand vous dites "échouer" - ce qui se passe réellement? –

+0

Et quel type de données est votre "resArray"? –

+0

Echec de l'impression des données. c'est l'objet Collection NVP assigné dans resArray. –

Répondre

7

Vous utilisez un Scripting.Dictionary sans aucun doute. Il n'est pas commandé utiliser ceci: -

Sub prArray(myArr) 
    Dim key 
    For Each key in myArr 
     Response.Write key & " = " & myArr.Item(key) & "<br />" 
    Next 
End Sub 
+0

merci, votre solution fonctionne. –

1

Quel type est resArray? Est-ce une collection? De la première section de code, il semble que vous accédiez aux éléments par clé, donc ce ne peut pas être un simple tableau ..? Pouvez-vous donner un exemple de code sur la façon dont resArray est déclaré et rempli?

Si la collection est 0 base, il sera:

For x = 0 to myarr.Count - 1 

Si la collection est 0 base, il sera:

For x = 1 to myarr.Count 

Si c'est un tableau de base, et vous ne savoir quel index base il est:

For x = LBound(myarr) to UBound(myarr)