2014-10-08 178 views
0

我有以下代码:获取当前列名

string result = null; 
     string query = "SELECT * FROM Energy"; 
     int index = 0; 

     sql.ConnOpen(); 

     cmd = sql.Command(query); 

     try 
     { 
      reader = cmd.ExecuteReader(); 

      while (reader.Read()) 
      { 

       result += "Date: " + reader["Date"].ToString() + "Here goes columnName " + (reader[index++].ToString().Equals("0") ? "No" : "Yes") + "\n"; 
      } 
     } 

凡说:Here goes columnName(在while循环中),我想补充当前列的名称。 我如何获得这个?因此请注意,我需要当前列的名称,而不是当前列的值

回答

1

SqlDataReader有一个GetName方法,该方法采用列索引并返回列名称。 GetOrdinal方法反向工作以在传递列名时返回列索引。