2012-10-15 12 views
1

지금은 쿼리 문자열을 통해 빈 배열 만 보내겠습니다.Request.QueryString "인덱스가 배열 경계를 벗어났습니다."

selectPONumber=[] 

이 오류가 발생하는 이유는 알 수 없습니다. stacktrace는 다음을 가리킨다.

If context.Request.QueryString("selectPONumber").Count <> 0 Then 
    For u = 1 To request.QueryString("selectPONumber").Count 
     selectPONumber.Add(request.QueryString("selectPONumber")(u)) 
    Next 
End If 

.Count가 0이면 어떻게 지나치나요? 내 검색어 문자열 형식이 잘못 되었습니까? 이 값이 있다면

는 사전에

selectPONumber=[value1, value2,...] 

많은 감사 같을 것이다! [] 사용하는 경우

추가 신용

예, vb.net는 배열로 selectPONumber을 읽지 않았다. selectPONumber = value1, value2, ... 할 필요가 있습니다.

고맙습니다.

답변

1

querystring이 이런 모양입니까?

mysite/mypage.aspx?selectPONumber=[] 

그렇다면 "[]"문자열과 Context.Request.QueryString("selectPONumber").Count == 2 문자열을 전달하는 것입니다. mysite/mypage.aspx?selectPONumber=에 대해 0으로 평가됩니다.

또한 VB.NET 배열은 0부터 시작합니다. 용도 :

For u = 0 To request.QueryString("selectPONumber").Count-1 
관련 문제