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 回答