-1

現在、エラーが発生しています:

ExecuteReader には、オープンで使用可能な接続が必要です。接続の現在の状態はオープンです。

これが私のコードです:

db.conn のクラス

Public Class db
    Public Shared conn As SqlConnection = db.getsqlconn("ezondb")



    Public Shared Function getsqlconn(ByVal whichdb As String) As SqlConnection
        Dim connstring As String = ConfigurationManager.ConnectionStrings(whichdb).ConnectionString
        Return New SqlConnection(connstring)
    End Function



Dim Macomm = db.selectcommand(db.conn, "*", "categories", "idparentcategory=1")
Dim Mada As New SqlDataAdapter(Macomm)
Dim Mat As New DataTable
Mada.Fill(Mat)
4

2 に答える 2

-1

Shared接続を次のように宣言しません。

Public Shared conn As SqlConnection = db.getsqlconn("ezondb")

必要なときに接続を開き、すぐに閉じます。

于 2013-04-20T14:36:28.777 に答える
-1

getsqlconn メソッドは sqlconnection オブジェクトの新しいインスタンスを返すだけです。open メソッドを呼び出して接続を明示的に開く必要があります。

于 2013-04-20T14:15:44.843 に答える