私はこのバグをしばらく理解しようとしていますが、助けていただければ幸いです。ありがとう。 ここに私のエラーメッセージがあります: プロシージャまたは関数 'getAvailableSMSNumbers'は、パラメータ '@Election_ID'が必要ですが、これは指定されていません。ここで"プロシージャまたは関数が提供されていないパラメータを期待しています"
は私のSQLコードです:
CREATE PROCEDURE {databaseOwner}{objectQualifier}getAvailableSMSNumbers
@Election_ID nvarchar(20)
AS
SELECT *
FROM {databaseOwner}{objectQualifier}icc_sms_phones
LEFT JOIN {databaseOwner}{objectQualifier}icc_sms_elections ON sms_elections_sms_number = phones_number
WHERE sms_elections_sms_number IS NULL
OR sms_elections_id = @Election_ID
GO
機能:機能を使用している
Public Overrides Function getAvailableSMSNumbers(eventid As String) As IDataReader
Dim dtable As New DataTable
Using sqlconn As New SqlConnection(Me.ConnectionString)
Using sqlcomm As New SqlCommand
Using sqlda As New SqlDataAdapter
sqlcomm.Connection = sqlconn
sqlcomm.CommandType = CommandType.StoredProcedure sqlcomm.CommandText=GetFullyQualifiedName("getAvailableSMSNumbers")
sqlcomm.Parameters.AddWithValue("@Election_ID", eventid)
sqlda.SelectCommand = sqlcomm
sqlconn.Open()
sqlda.Fill(dtable)
sqlconn.Close()
Return dtable.CreateDataReader
End Using
End Using
End Using
End Function
:
Public Function getAvailableSMSNumbers(eventid As String) As List(Of phoneModel)
Dim numbers As New List(Of phoneModel)
Dim number As phoneModel
numbers = CBO.FillCollection(Of phoneModel)(dal.getAvailableSMSNumbers(eventid))
For Each number In numbers 'dal.getAvailableSMSNumbers(eventid).Rows
number = New phoneModel
With number
.val = ("PHONES_NUMBER").ToString
.text = String.Format("{0:# (###) ###-####}", Long.Parse(.val))
End With
numbers.Add(number)
Next
Return numbers
End Function
あなたはもう情報が必要な場合、私に知らせて、私はそれを追加します。
実際に有効な文字列を 'eventid'として渡していることを確認できますか? –
可能な複製http://stackoverflow.com/q/3865982/1654818。可能であれば、あなたと問題を比較し、差別化のための詳細を追加してください。 – JimmyBoh