Ini mungkin bukan masalah dengan kode Anda. Ini adalah bug di SQL Server. Mereka memiliki masalah yang sama di SQL Server 2005. Itu hanya terjadi dalam kondisi yang tepat, sehingga sangat sedikit orang yang pernah melihatnya dan mereka yang melakukannya sangat bingung.
Karena itu, berikut adalah beberapa hal yang harus diperiksa yang berhasil untuk orang lain dengan masalah yang sama:
- Cari Pembaca Data yang tidak tertutup. Pastikan Anda melakukanmyReader.Close() setelah Anda membaca baris yang Anda inginkan. Banyak orang hanya bergoyang tanpa menutup.
- Gunakan kelas SqlTransaction asli alih-alih OleDbTransactions jika memungkinkan.
- Lihat transaksi Anda. Pastikan Anda melakukan/rolling back dengan bersih sebelum Anda menutup Koneksi.
- Gunakan Connection.BeginTransation daripada Connection.BeginDbTransaction