다른 유형의 열이있는 DataTable
이 있습니다. 내가 원하는 것은 DataTable
같은 열 이름을 가지고 있지만 모든 값은 문자열입니다. 이 첫 번째 경우 즉, :C# DataTable을 복사하고 모든 값을 문자열로 변환
String
열
Name Age
-----------
John 31
Alice 27
Marge 45
곳과 나이가 Int32
열입니다, 내가 원하는 것은 :
Name Age
-----------
John 31
Alice 27
Marge 45
이름과 나이가 모두 문자열
있습니다 열. 출력 테이블은 입력 테이블과 동일한 값을 포함해야하지만 모든 값은 문자열로 변환되어야합니다. 누구든지이 일을 어떻게 수행할지에 대한 통찰력을 제공 할 수 있습니까?
foreach (DataColumn col in inputTable.Columns)
{
outputTable.Columns.Add(col.ColumnName, typeof(string));
foreach (DataRow row in inputTable.Rows)
{
...??
}
}
또는 아마도 더 효과적인 방법이 있습니까? 모든 지침은 크게 감사하겠습니다.
답변 해 주셔서 감사합니다. 이것은 뒤에서 값의'ToString()'을 호출하는 것과 같은 것입니까? 나는'ImportRow'가 원래의 데이터 타입을 보존한다고 생각했는데,이 경우에는 타입 에러가 발생하지 않을까요? –
@Alex, 아니요, ImportRow는 데이터를 가져 와서 사용 가능한 컨테이너에 맞 춥니 다. 내가 VS에서 위의 코드를 시도하고 작동 – Habib
나는 모든 열이 지금은 문자열 형식이지만 각 'DataColumn'에 대한'MaxLength' 속성은 -1입니다. 문자열 열에 대해 항상> = 0이 아니어야합니까? –