2011-12-08 4 views
1

데이터베이스에서 일부 데이터를 가져 와서 내 양식에 넣으려고합니다. 코드 내 notificationForm에 대한Windows에서 데이터베이스에서 데이터를 검색하는 동안 오류가 발생했습니다. 응용 프로그램

notificationList.Add(new notificationForm(
      (String)dataset.Tables["alertdetails"].Rows[0]["memberName"], 
      (String)dataset.Tables["alertdetails"].Rows[0]["locationName"], 
      (String)dataset.Tables["alertdetails"].Rows[0]["photo"], 
      "", 
      (String)dataset.Tables["alertdetails"].Rows[0]["memberid"], 
      "", 
      "", x, y, alertId)); 

인수를가는 것은

public notificationForm(String name, String location, String imageExtension, 
         String alertType,String memberid,String date,String time, 
         int x,int y,String alertid) 

오류가 '선택 System.String'를 입력

유형 '선택 System.Int32'의 개체를 캐스팅 할 수 없습니다

간다입니다 .

줄에서 memberid를 검색합니다. 아무도 그걸 고치는 법을 알아? 그것은 괜찮아 memberName, locationName 및 사진 비록 작동합니다.

답변

1
dataset.Tables["alertdetails"].Rows[0]["memberid"] 

데이터베이스의 데이터 유형이 memberid 인 경우 정수 값을 제공합니다. 그런 다음 끝에 ToString()을 추가하거나 int로 변환하십시오.

예 :

dataset.Tables["alertdetails"].Rows[0]["memberid"].ToString() 
         OR 
Convert.ToInt32(dataset.Tables["alertdetails"].Rows[0]["memberid"]) 
+0

당신을 감사합니다. 그것은 작동합니다! – Thomas

0

int (32 비트 정수)로 전송하면 오류 메시지가 표시됩니다.

데이터베이스 테이블에서 'memberid'열의 유형을 확인하십시오. 아마도 그것은 정수입니다.

관련 문제