2014-04-25 3 views
0

데이터 테이블 하나의 값을 다른 데이터 테이블에 할당 할 때 새로운 데이터 테이블 값을 변경하면 다른 데이터 테이블 (이전 값) 또한 change.as로 변경된다는 사실을 알게되었습니다. 해결하도록 도와주세요. 예 :다른 데이터 테이블 값에 데이터 테이블 할당하기

   DataTable dt = new DataTable(); 
       dt = dtRpt;//dtrpt contains some value 
       dt.Columns.Remove("KidoTotal"); 
       dt.Columns.Remove("Total"); 
       dt.Columns.Remove("intSubjectID"); 
+0

Datatables는 심판에 의해입니다. 복제본 또는 복사본을 만들어 데이터 테이블에 작업을 수행하고 다른 작업에서는 변경하지 마십시오. –

답변

1

DataTable가하는 reference type이다 사용하는 경우 모두 실제로 같은 테이블입니다.

당신은 같은 스키마를 새 테이블에 데이터를 복사해야

, 당신은 DataTable.Copy를 사용할 수 있습니다

DataTable dt = dtRpt.Copy(); // use Clone if you want to create an empty table without data with the same schema 
1

위를보십시오 :

 DataTable dt = new DataTable(); 
     dt = dtRpt.Clone();//dtrpt contains some value 
     dt.Columns.Remove("KidoTotal"); 
     dt.Columns.Remove("Total"); 
     dt.Columns.Remove("intSubjectID"); 

Clone은 스키마입니다. 당신이 필요로하는 데이터가 당신이 당신의 변수에 다른 DataTable 참조를 할당 그래서 만약 Copy