Извините, если это было описано, но я не смог найти что-то конкретно по этой проблеме в своих поисках.
Я пытаюсь отладить классическое приложение ASP.Мне нужно напечатать переменные сеанса, одна из которых является массивом.Мой код ниже, я продолжаю получать Subscript вне диапазона, обычно это означает, что массив пуст (Ubound возвращает -1), но в этом случае он возвращается как 9. Я пробовал For i = 1 To 4
и For i = 0 To 4
сте же результаты.
For Each Item In Session.Contents
If IsArray(Session(item)) Then
localArray = Session(item)
Response.Write "<h1>Ubound = " & Ubound(localArray) & "</h1> <br />" //getting Ubound = 9 here
For i = 1 To Ubound(localArray)
Response.Write "<br> " & item
Response.Write "(" & i & ") = " & localArray(i)
Next
Elseif IsObject(Session(item)) Then
Response.Write "<b>" & item & " is an object </b>"
Else
Response.Write item & " = " & Session(item)
End If
Response.Write "<br>"
Next
РЕДАКТИРОВАТЬ
Изменен код на
For i = LBound(localArray) To UBound(localArray)
Также пытались
localArray = Session(item)
Response.Write localArray(2) //since UBound returns 9 figured 2nd index should be safe
Iпо-прежнему получаю сообщение об ошибке, кажется, что массив не может быть одного измерения.Однако я не знаком со структурой или созданием этой переменной сеанса, есть ли способ получить структуру массива в ASP?