2014-05-14 2 views
8

두 테이블이있는 데이터 집합이 있습니다. 두 번째 테이블에서 첫 번째 열의 값을 가져 와서 int 변수로 초기화하고 싶습니다.
해당 열의 이름은 CONTACT_ID데이터 집합의 테이블에서 열 값 반환

시도했습니다.

int Contract_id = Convert.ToInt32(dsDiscounts.Tables[1].Columns[0]); 

하지만

는 오류를 보여주는데 :

Unable to cast object of type 'System.Data.DataColumn' to type 'System.IConvertible'.

사람이

+0

그것의 간단한 예를보십시오 –

답변

18

dsDiscounts.Tables[1].Columns[0] 반환 열 정의 (DataColumn 인스턴스에 의해 정의 등 데이터 유형, 캡션,) 제발 도움이 될 수 있습니다. 물론 컬럼 정의 변환이 실패합니다.

필요한 것은 테이블의 일부 행 (첫 번째 행으로 가정)의 셀 값입니다. 표 행에 액세스하려면 Rows 콜렉션을 사용해야합니다. 인덱스로 DataRow이 필요하면 행 by index, column name, 열 객체 등의 셀에 액세스 할 수 있습니다. 열 이름이 첫 번째 행의 셀 값을 얻는 것은 : http://sforsuresh.in/c-getting-column-name-dataset/ :

dsDiscounts.Tables[1].Rows[0]["CONTACT_ID"] 
2

int Contract_id = Convert.ToInt32(dsDiscounts.Tables[1].Rows[0]["CONTACT_ID"]); 
관련 문제