我有一个简单的SQL查询(使用sqlCommand,sqlTransaction)在.NET 2.0中返回一个整数字符串对(ID,名称)的表.我想把这个数据转换成一个字典,如Dictionary< int,string> ;. 我可以将结果转化为DataTable,但是即使是迭代,我也不知道如何打字和所有的东西.我觉得这是一个常见的问题,但我没有找到任何好的解决方案. 提前致谢.
解决方法
您可以尝试类似于此的方法,然后调整您当前正在循环结果:
Dictionary<int,string> dictionary = new Dictionary<int,string>(); using (sqlConnection connection = new sqlConnection(connectionString)) { connection.Open(); using (sqlCommand command = new sqlCommand(queryString,connection)) { using (sqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { dictionary.Add(reader.GetInt32(0),reader.GetString(1)); } } } } // do something with dictionary
SqlDataReader.GetInt32 method和SqlDataReader.GetString method分别代表ID和Name列索引.