2013-07-19 5 views
0

DataTable에 일부 열 값이 채워져 있습니다. 한 단위에서 다른 단위로 열 값을 변환하고 싶습니다. 예C#에서 한 장치에서 다른 장치로 DataTable 열 값을 변환하는 방법?

DataTable Columns(Name,Height,Width) 

미터, 미터에 인치는 센티미터 등

Id UnitName 
1 Inches 
2 Millimeters 
3 Fractions 
4 Decimal 
5 Feet 
6 Centimeters 
7 Meters 

private string Convert(string strToConvert, int from, int to) 
     { 
      //some code here 
      return strToConvert; 
     } 
+0

여기에서 무엇을 찾고 계십니까? 그것을 할 코드? 행과 열을 반복하고 row.SetValue()를 호출하여 새 값을 설정하십시오. – bhs

+0

각 단위에 표준 단위로 요소를 부여 할 수 있습니다. 예를 들어 meter는 표준 길이 단위이므로 'meter = 1'이므로 'cm = 0.01', 'mm = 0.001'등으로 생각합니다. 그런 다음 한 단위에 값이 있으면 그 단위 계수를 곱해서 원하는 단위의 인수로 나눕니다. '5cm * 0.01 = 0.05; 0.05/0.001 = 50mm이다. – Corak

+0

혼란스러워! Linq를 사용할지 또는 각 행을 루핑할지 여부는 혼란 스럽습니까? Linq를 사용하는 아이디어? –

답변

0

당신은 값을 각각의 매트릭스를 유지하기 위해, 예를 들어, 컨테이너의 일종의 변환 데이터를 유지해야합니다 행은 단위에서 사용되며 각 열은 단위를 나타냅니다 (따라서 x == y 인 경우 어떤 단위에서 동일한 단위로 변환해도 값이 1이됩니다)

코드는 다음과 같습니다 :

double value_to_convert = Double.Parse(strToConvert); 
return (value_to_convert* mat[from][to]).ToString();