文字列の配列をSQLパラメータとして渡したいのですが、コマンドを実行すると、「オブジェクトはIConvertibleを実装する必要があります」という例外がスローされます。コードは次のとおりです(3つの列はすべてnvarcharです)。
Public Sub sendsms(messageBodies As String(), ByVal recipientNumbers As String(), Optional ByVal chkMsgIds As string() = Nothing)
Dim con As New SqlConnection
con.ConnectionString = connection.Sms
Dim cmd As New SqlCommand("insert into sentmessage (text,id,number) values (@text,@id,@number)", con)
cmd.Parameters.Add("@text", Data.SqlDbType.NVarChar, n).Value = messageBodies
cmd.Parameters.Add("@id", Data.SqlDbType.NVarChar, n).Value = chkMsgIds
cmd.Parameters.Add("@number", Data.SqlDbType.NVarChar, n).Value = recipientNumbers
con.Open()
cmd.ExecuteNonQuery()
con.Close()
cmd.Dispose()
End Sub
大量のレコードをデータベースに挿入するためにこのルーチンを作成しましたが、正しいアプローチは何ですか?