SqlDataReader很類似以前ASP時代的「RecordSet」,簡單又好用。
但缺點就是:ASP.NET 的SqlDataReader不像RecordSet,可以在同一個資料庫連線裡面,重複開啟「多個」RecordSet。
Microsoft說:「每次在 SqlConnection 上只能有一個 SqlDataReader 開啟。」
所以,當DataReader尚未關閉之前,是不能連續使用第二個DataReader的.....
這實在很困擾。因為在以前的ASP時代,一個資料庫連線裡面,搞不好同時開好幾個RecordSet來工作呢!
解決方法有兩個:
第一,ASP.NET 2.0搭配MS SQL 2005的話,可以解決。請看微軟的官方文件「MultipleActiveResultSets 屬性」,請將這屬性,寫在資料庫連線字串(ConnectionString)裡面。
第二,就是SqlDataReader的「.NextResult()」方法,請看這篇文章的說明(簡體中文網站)。
本文出處:http://www.taconet.com.tw/mis2000_aspnet/
沒有留言:
張貼留言