我有一个简单的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列索引.