2012-05-31 2 views
-1

처리 할 수있는 다음 레코드로 이동하는 다음 코드를 가지고 있습니다.데이터 세트에서 다음 사용 가능한 레코드로 이동

 Dim ds As New DataSet 
     Dim strListType As String = Request.QueryString("ListType") 
     Dim strStatusFilter As String = "" 
     Select Case strListType 
      Case "newmember" 
       strStatusFilter = "Status_Ind in (1,4,6,8) and IsMember_Ind=1" 
      Case "nonmember" 
       strStatusFilter = "Status_Ind in (1,4,6,8) and IsMember_Ind=1" 
      End Select 

     ds = objClass.List(0, 10, "Due_Dt, Joined_Date ASC", "", strStatusFilter) 

     'go to the next record 
     If ds.Tables(0).Rows.Count > 0 Then 
      Server.Transfer("Request.aspx?Request_ID=" & ds.Tables(0).Rows(0).Item("Request_ID") & "&ListType=" & strListType) 
     Else 
      Server.Transfer("List.aspx?Status=NewMember") 
     End If 

ObjClass.List는보기를 실행하고 데이터를 필터링하기 위해 구현되는 메서드입니다. due_dt 및 joined_dt 두 열에 대한 데이터를 주문하고 있습니다.

내 문제는 내가 기한을 갱신하지 않으면 매번 같은 기록으로 이동한다는 것입니다. 업데이트하지 않을 경우 다음 레코드로 이동하려고합니다. 호, 내가 원하는 행동을 할 수 있을까요? 내가 할 수있는 변화는 무엇인가?

감사

답변

1

다음 명령문은 테이블의 첫 번째 행 반환 : 모든 통해 반복하려면

ds.Tables(0).Rows(1).Item("Request_ID") 

:

ds.Tables(0).Rows(0).Item("Request_ID") 

두 번째 행을 얻으려면, 당신이 문을 사용할 수를 다음과 같이 행할 수 있습니다.

For Each row As DataRow in ds.Tables(0).Rows 
    Dim requestId As Object = row.Item("Request_ID") 
Next 
0

이 코드를 사용하십시오 .... 이것은 작동해야합니다. 먼저 data_row라는 고정 변수와 데이터 세트를 선언해야합니다.

공개 무효를 Button1_Click (개체 송신자있는 EventArgs E) { 경우 (RowNo < sqlDst.Tables [ "뉴스"] Rows.Count - 1). { RowNo + = 1; DataRow drow = sqlDst.Tables [ "news"]. 행 [RowNo];

  Label2.Text = drow.ItemArray.GetValue(0).ToString(); 
      TextBox2.Text = drow.ItemArray.GetValue(1).ToString(); 
      Label1.Text = ""; 

     } 

     else 
     { 
      Label1.Text = "No more records"; 
     } 

    } 

이 작동하려면

페이지의 상단에 변수를 선언해야합니다.

개인 데이터 집합 sqlDst = new DataSet(); private static int RowNo = 0; businesscheck obj1 = new businesscheck();

관련 문제