2013-10-18 2 views
0

내 프로그램에 데이터 테이블이 있는데 동일한 데이터 형식을 가진 열의 목록을 가져오고 싶습니다.데이터 테이블에서 동일한 데이터 형식의 열 목록을 가져 오는 방법

 DataTable dt = new DataTable(); 
     dt.Columns.Add("col1", typeof(string)); 
     dt.Columns.Add("col2", typeof(string)); 
     dt.Columns.Add("col3", typeof(int)); 
     dt.Columns.Add("col4", typeof(string)); 

     List<DataColumn> string_type_columns = new List<DataColumn>(); 
     for (int i = 0; i < dt.Columns.Count;i++) 
     { 
      if (dt.Columns[i].DataType.ToString().Equals("System.String")) 
      { 
       string_type_columns.Add(dt.Columns[i]); 
      } 
     } 

string_type_columns 나에게 문자열 데이터 유형을 가진 열 목록을 줄 것이다 :

는 다음 코드를 사용했다. 하지만 실제 테이블에는 40 개 이상의 열이있을 수 있으므로 각 열의 데이터 테이블을 반복하고 싶지는 않습니다.

이 작업을 수행하는 다른 (더 나은) 방법이 있습니까?

답변

0

코드가 적다면 LINQ를 사용할 수 있다고 가정합니다.

var string_type_columns = dt.Columns.Cast<DataColumn>().Where(c => c.DataType == typeof(String)); 
+0

이것은 내가 찾던 내용입니다. 감사합니다. – Tarun

관련 문제