VB.NETで "ConnectionStringプロパティが初期化されていません"エラー

データベースに接続しようとするたびに、このエラーが表示される "ConnectionStringプロパティが初期化されていません"

これを解決するために私は何ができますか?

ここに私のコードです

Module Module1
    Function GetInfoForStudent(ByRef QueryName As String, ByVal UserName As String, ByVal Password As String) As DataTable
        Using Con As New SqlConnection
            Try
                Using OleCon As New SqlConnection
                    Dim Connection As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=G:\VB Project\Library
Catalog System\Library Catalog System\library.mdf;Integrated
Security=True;Connect Timeout=30;User Instance=True"
                    Con.Open()
                    Dim Cmd As SqlCommand = Con.CreateCommand()
                    Cmd.CommandType = CommandType.StoredProcedure
                    Cmd.CommandText = QueryName
                    Cmd.Parameters.AddWithValue("@user", UserName)
                    Cmd.Parameters.AddWithValue("@pass", Password)
                    Dim da As New SqlDataAdapter(Cmd)
                    Dim ds As New DataTable()
                    da.Fill(ds)
                    Return ds
                End Using
            Catch ex As Exception

                Throw New Exception(ex.Message)
            End Try
        End Using

    End Function

End Module

Sub ShowStudentInfo()
    Dim dt As DataTable = GetInfoForStudent("MyStoredProcName", "@user", "@pass")
    ' Since (presumably) only one is returned
    With dt.Rows(0)
        ' Assign your text boxes 
        StudentIDTextBox.Text = .Item("StudentID")
        LoginIDTextBox.Text = .Item("LoginID")
        Student_NameTextBox.Text = .Item("Student Name")
        Student_addressTextBox.Text = .Item("Student address")

    End With
End Sub
3

2 答え

エラーが発しているように、接続オブジェクトに接続文字列を割り当てたことはありません。

con.openの前に接続文字列を設定する行を挿入します。

Con.connectionstring = connection
Con.Open()

または、より良いことに、usingステートメントを次のように変更します

Dim Connection As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=G:\VB Project\Library Catalog System\Library Catalog System\library.mdf;Integrated
Security=True;Connect Timeout=30;User Instance=True"

Using Con As New SqlConnection(connection)
5
追加された
また、 "OleCon"コードを見るかもしれませんが、変数を決して使用しないので不要です。ところで、私が必要とするすべてのおかげでupvoteです。
追加された 著者 JohnFx,
@CompleteNewb JohnFxの答えが助けられたら、あなたの答え(彼のポストの横にあるチェックマーク)が選択されています。それはまたあなたに2つの評判を与えるでしょう。
追加された 著者 Gage,
ありがとうございました!それは今働いている。
追加された 著者 CompleteNewb,
さて、私はこの声明を変更し、もう一度感謝します。私があなたにupvoteを与えたいと思うほど、私はまだ評判が不足しています。しかし、本当にありがとう、良い一日を。
追加された 著者 CompleteNewb,

接続文字列オブジェクトを作成していますが、 SqlCommand オブジェクトには決して割り当てません。

1
追加された