반응형
DataTable의 열을 목록으로 변환하는 방법
여러 열이있는 DataTable이 있습니다. List<String>
DataTable의 첫 번째 열을 가져오고 싶습니다 . 어떻게 할 수 있습니까?
이 시도:
static void Main(string[] args)
{
var dt = new DataTable
{
Columns = { { "Lastname",typeof(string) }, { "Firstname",typeof(string) } }
};
dt.Rows.Add("Lennon", "John");
dt.Rows.Add("McCartney", "Paul");
dt.Rows.Add("Harrison", "George");
dt.Rows.Add("Starr", "Ringo");
List<string> s = dt.AsEnumerable().Select(x => x[0].ToString()).ToList();
foreach(string e in s)
Console.WriteLine(e);
Console.ReadLine();
}
var list = dataTable.Rows.OfType<DataRow>()
.Select(dr => dr.Field<string>(columnName)).ToList();
[ 편집 : System.Data.DataSetExtensions
컴파일되지 않으면 프로젝트에 대한 참조 추가 ]
이것이 필요한 것입니까?
DataTable myDataTable = new DataTable();
List<int> myList = new List<int>();
foreach (DataRow row in myDataTable.Rows)
{
myList.Add((int)row[0]);
}
여기 있습니다.
DataTable defaultDataTable = defaultDataSet.Tables[0];
var list = (from x in defaultDataTable.AsEnumerable()
where x.Field<string>("column1") == something
select x.Field<string>("column2")).ToList();
첫 번째 열이 필요한 경우
var list = (from x in defaultDataTable.AsEnumerable()
where x.Field<string>(1) == something
select x.Field<string>(1)).ToList();
나는 당신을 위해 샘플을 만들고 이것이 도움이되기를 바랍니다.
static void Main(string[] args)
{
var cols = new string[] { "col1", "col2", "col3", "col4", "col5" };
DataTable table = new DataTable();
foreach (var col in cols)
table.Columns.Add(col);
table.Rows.Add(new object[] { "1", "2", "3", "4", "5" });
table.Rows.Add(new object[] { "1", "2", "3", "4", "5" });
table.Rows.Add(new object[] { "1", "2", "3", "4", "5" });
table.Rows.Add(new object[] { "1", "2", "3", "4", "5" });
table.Rows.Add(new object[] { "1", "2", "3", "4", "5" });
foreach (var col in cols)
{
var results = from p in table.AsEnumerable()
select p[col];
Console.WriteLine("*************************");
foreach (var result in results)
{
Console.WriteLine(result);
}
}
Console.ReadLine();
}
참고 URL : https://stackoverflow.com/questions/6617804/how-to-convert-a-column-of-datatable-to-a-list
반응형
'IT TIP' 카테고리의 다른 글
Ruby에서 스택 추적 객체를 얻는 방법은 무엇입니까? (0) | 2020.12.14 |
---|---|
드래그 할 때 Google지도 이벤트 bounds_changed가 여러 번 트리거 됨 (0) | 2020.12.14 |
Chrome JavaScript Debugger 사용 / 페이지 로딩 이벤트 중단 방법 (0) | 2020.12.14 |
C ++에서 c_str 함수의 사용은 무엇입니까 (0) | 2020.12.14 |
node.js에서 내 스크립트가 직접 실행되고 있는지 또는 다른 스크립트에 의해로드되고 있는지 알 수 있습니까? (0) | 2020.12.14 |