0
私たちはインストラクターが学習するいくつかのコードを与えられています。私はそれらを使ってログインシステムを作成することを計画していましたが、どのようにすればよいか分かりません。私はこれについてかなり新しく、私は学びたいと熱望しています。私はひどく助けが必要です。クラスからモジュールを呼び出す方法は?
Imports MySql.Data.MySqlClient
Module MySqlManager
Public Function GetMySqlConnStr() As String
Dim connStrBuilder As New MySqlConnectionStringBuilder
With connStrBuilder
.Server = "localhost"
.UserID = "root"
.Password = ""
.Database = "bloodbank"
.Port = 3306
End With
''Returns the mysql connection string
Return connStrBuilder.ConnectionString
End Function
''' <summary>
''' Use ExecuteNonQuery for INSERT/UPDATE/DELETE query. Returns 0 if failed.
''' </summary>
''' <param name="commandText"></param>
''' <param name="parameters"></param>
Public Function ExecuteNonQuery(ByVal commandText As String, ByVal ParamArray parameters As MySqlParameter()) As Integer
Using conn As New MySqlConnection(GetMySqlConnStr)
Using cmd As New MySqlCommand(commandText, conn)
conn.Open()
cmd.Prepare()
cmd.CommandType = CommandType.Text
If parameters IsNot Nothing Then
cmd.Parameters.AddRange(parameters)
End If
Return cmd.ExecuteNonQuery()
End Using
End Using
End Function
''' <summary>
''' Use ExecuteScalar for querying a single value
''' </summary>
''' <param name="commandText"></param>
''' <param name="parameters"></param>
Public Function ExecuteScalar(commandText As String, ParamArray parameters As MySqlParameter()) As Object
Using conn As New MySqlConnection(GetMySqlConnStr)
Using cmd As New MySqlCommand(commandText, conn)
conn.Open()
cmd.Prepare()
cmd.CommandType = CommandType.Text
If parameters IsNot Nothing Then
cmd.Parameters.AddRange(parameters)
End If
Return cmd.ExecuteScalar()
End Using
End Using
End Function
''' <summary>
''' Use ExecuteReader when you are making an SQL call that will return a record set from a table.
''' </summary>
''' <param name="commandText"></param>
''' <param name="parameters"></param>
Public Function ExecuteReader(ByVal commandText As String, ByVal ParamArray parameters As MySqlParameter()) As MySqlDataReader
Dim conn As New MySqlConnection(GetMySqlConnStr)
Using cmd As New MySqlCommand(commandText, conn)
conn.Open()
cmd.Prepare()
cmd.CommandType = CommandType.Text
If parameters IsNot Nothing Then
cmd.Parameters.AddRange(parameters)
End If
Dim reader As MySqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)
Return reader
End Using
End Function
End Module
** "モジュールのインスタンスを1つしか持てません" ** VBのモジュールはクラスではなく、オブジェクトのインスタンス化には使用できません。むしろ、それらは名前空間に似ていますが、名前空間に関数を直接含めることはできません。一般的に、モジュールは静的クラスです... – Codexer
"VBのモジュールはクラスではありません"で始まり、 "モジュールは静的クラス"で終わります。モジュールは、C#静的クラスのvb.net版です。 – Claudius