2016-07-25 4 views
0

데이터 테이블에서 행을 읽는 간단한 방법을 찾고 있습니다. 나는 이것이 어딘가에 답을 얻었을 것이라고 확신하지만, 내 인생에서 그것을 찾을 수 없다.C#의 데이터 테이블에서 행을 읽으려면 어떻게해야합니까?

내 코드는 다음과 같습니다

static void Main(string[] args) 
     { 
      DataTable table1 = new DataTable("myTable"); 
      DataColumn column; 
      DataRow row; 

     table1.PrimaryKey = new DataColumn[] { table1.Columns["idnum"] }; 

     column = new DataColumn(); 
     column.DataType = System.Type.GetType("System.String"); 
     column.AutoIncrement = false; 
     column.ColumnName = "name"; 
     column.ReadOnly = true; 
     column.Unique = false; 
     table1.Columns.Add(column); 

     column = new DataColumn(); 
     column.DataType = System.Type.GetType("System.String"); 
     column.AutoIncrement = false; 
     column.ColumnName = "type"; 
     column.ReadOnly = true; 
     column.Unique = false; 
     table1.Columns.Add(column); 

     column = new DataColumn(); 
     column.DataType = System.Type.GetType("System.Int32"); 
     column.AutoIncrement = false; 
     column.ColumnName = "atk"; 
     column.ReadOnly = true; 
     column.Unique = false; 
     table1.Columns.Add(column); 

     column = new DataColumn(); 
     column.DataType = System.Type.GetType("System.Int32"); 
     column.AutoIncrement = false; 
     column.ColumnName = "spd"; 
     column.ReadOnly = true; 
     column.Unique = false; 
     table1.Columns.Add(column); 



     row = table1.NewRow(); 

     row["name"] = "long sword"; 
     row["type"] = "weapon"; 
     row["atk"] = 7; 
     row["spd"] = 4; 
     table1.Rows.Add(row); 

     row = table1.NewRow(); 

     row["name"] = "short sword"; 
     row["type"] = "weapon"; 
     row["atk"] = 5; 
     row["spd"] = 5; 
     table1.Rows.Add(row); 

     row = table1.NewRow(); 

     row["name"] = "dagger"; 
     row["type"] = "weapon"; 
     row["atk"] = 3; 
     row["spd"] = 8; 
     table1.Rows.Add(row); 

     foreach(DataRow rowly in table1.Rows) 
     { 
      //what goes here? 

     } 
     Console.ReadKey(); 

}

내가 행의 데이터를 참조하기 위해 작성합니까?

+0

'문자열 이름 = rowly.Field ("이름");'. 죄송합니다. 그러나 귀하의 질문에 검색을 시도하지 않은 것으로 나타났습니다. – Fabio

+0

"rowly.ItemArray [0] 또는 [1] 또는 [2] 또는 [3]"은 원하는 것입니까? –

+0

행과 이름에 대한 참조를 사용하여 값을 입력하여 열 (속성)에 액세스합니다. 동일한 접근 방식을 사용하여 값을 다시 읽으려고 시도하지 않은 이유는 무엇입니까? – slugster

답변

0

는 다음과 같은 코드를 사용하여 이러한 값을 인쇄 할 수 있습니다

int rowIndex=0; 
StringBuilder rowValueBuilder = new StringBuilder(); 
foreach (DataRow rowly in table1.Rows) 
{  
    rowValueBuilder.AppendFormat("Row {0} Values \n", rowIndex++); 
    rowValueBuilder.AppendFormat("Name : {0} \n", rowly["name"]); 
    rowValueBuilder.AppendFormat("Type : {0} \n", rowly["type"]); 
    rowValueBuilder.AppendFormat("Atk : {0} \n", rowly["atk"].ToString()); 
    rowValueBuilder.AppendFormat("Spd : {0} \n", rowly["spd"].ToString());   
} 
Console.WriteLine(rowValueBuilder.ToString()); 
+0

@ Fabio : 예, 감사합니다. 고마워요. –

관련 문제