[問題] 有關雜湊 hashtable 巢狀

看板C_Sharp (C#)作者 (加油加油^^)時間13年前 (2011/11/23 17:28), 編輯推噓1(107)
留言8則, 3人參與, 最新討論串1/3 (看更多)
一個資料庫只有兩個欄位共三行資料 col2 | col2 A | A2 B | B2 C | C3 使用雜湊 存取資料 SqlDataReader reader = new SqlCommand(totsql, conn).ExecuteReader(); int tmpi = 0; Hashtable phpary1 = new Hashtable(); while (reader.Read()) { Hashtable phpary2 = new Hashtable(); phpary2.Add("remark" , reader["remark"].ToString() ); phpary2.Add("response", reader["response"].ToString() ); phpary1.Add(tmpi, phpary2); tmpi++; } 想知道 1.有沒有辦法使用foreach 讀取每一行 每一欄的資料? 2.有更好的辦法嗎? 感覺雜湊不是這樣用的 O_oa ? -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.218.112.35

11/23 17:59, , 1F
1.可以 .GetString(int) 2.這樣用Dictionary可能方便點
11/23 17:59, 1F

11/23 18:56, , 2F
兩個問題,你會需要用到每筆資料的row num嗎? (tmpi)
11/23 18:56, 2F

11/23 18:57, , 3F
col是否固定種類? (只有remark, response兩種?)
11/23 18:57, 3F

11/23 18:58, , 4F
1.不需要用到row num時,可以改用List存放
11/23 18:58, 4F

11/23 18:58, , 5F
2.固定種類,那就不用hashtable了,直接做個class放每個row
11/23 18:58, 5F

11/23 19:03, , 6F
視你使用這些資料的方式,還有些方便的collection可幫助你
11/23 19:03, 6F

11/23 22:43, , 7F
一般是用DataTable接資料吧
11/23 22:43, 7F

11/23 22:45, , 8F
可以用DataTable.Load()
11/23 22:45, 8F
文章代碼(AID): #1EpBoa1z (C_Sharp)
文章代碼(AID): #1EpBoa1z (C_Sharp)