0

私は AutoCompleteExtender の関数を書いていないので、それを台無しにせずに変更する方法がよくわからないので、ここで質問することにしました。最近、オートコンプリートに製品名とその特定の製品の発売日を表示するように要求されました。オートコンプリートに日付を追加する方法がわかりません。

これが必要な理由は、私たちが提供するウェビナーが将来再び表示されるためです。そのため、データベースには同じ名前のウェビナーが複数存在します。全く同じ名前のウェビナーが3つあると検索するとちょっと選びにくいので、名前と日付が表示されると選びやすいと思います!

これが今書かれている方法は正しくありません。行内の単語の下にlaunchdate波線が表示されDim item As String = AjaxControlToolkit......、エラーは次のとおりです。Too many arguments to 'Public Shared Function CreateAutoCompleteItem(text As String, value As String) As String'

どんな助けでも大歓迎です!私が言ったように、私はこれを書いていないので、これがベストプラクティスであるかどうかさえわかりません. コードを批判したい場合は理解しています。必要に応じて変更しますが、余分なフィールドを追加する方法も知りたいです。ありがとう!

Public Function GetProducts(ByVal prefixText As String, ByVal count As Integer) As String()
    Dim ProductSql As String = "Select DISTINCT ProductID, ProductName, LaunchDate 
                                FROM Product 
                                WHERE ProductName LIKE '%' + @prefixText + '%' 
                                AND LaunchDate IS NOT NULL 
                                ORDER BY ProductName ASC"
    Using sqlConn As New SqlConnection
(System.Configuration.ConfigurationManager.ConnectionStrings("LocalSqlServer").ConnectionString)
        sqlConn.Open()
        Dim myCommand As New SqlCommand(ProductSql, sqlConn)
        myCommand.Parameters.Add("@prefixText", SqlDbType.VarChar, 50).Value = prefixText
        Dim myReader As SqlDataReader = myCommand.ExecuteReader()
        Dim myTable As New DataTable
        myTable.TableName = "ProductSearch"
        myTable.Load(myReader)
        sqlConn.Close()
        Dim items As String() = New String(myTable.Rows.Count - 1) {}
        Dim i As Integer = 0
        For Each dr As DataRow In myTable.Rows
            Dim id As String = dr("ProductID").ToString()
            Dim name As String = dr("ProductName").ToString()
            Dim launchdate As String = dr("LaunchDate").ToString()
            Dim item As String = 
            AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(name, id, launchdate)
            items.SetValue(item, i)
            i += 1
        Next
        Return items
    End Using
End Function
4

1 に答える 1

0

これを試して..

AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(name & " " & launchdate, id) 
于 2012-03-01T17:29:56.600 に答える