Я работаю над созданием HTTPHandler, который будет обслуживать простой текст для использования с jQuery Autocomplete. У меня это работает сейчас, за исключением того, что когда я вставляю первый бит текста, это не приводит меня к правой части алфавита.
Пример: если я введу Ne
мой выпадающий возвращается
Nlabama
Arkansas
Обратите внимание на "N" из Ne
и "лабаму" из "Алабамы"
Когда я набираю третий символ New
, тогда jQuery возвращает раздел результатов «N».
Мой текущий код выглядит так
Public Sub ProcessRequest(ByVal context As System.Web.HttpContext) Implements System.Web.IHttpHandler.ProcessRequest
''# the page ContentType is plain text
HttpContext.Current.Response.ContentType = "text/plain"
''# store the querystring as a variable'
Dim qs As Nullable(Of Integer) = Integer.TryParse(HttpContext.Current.Request.QueryString("ID"), Nothing)
''# use the RegionsDataContext'
Using RegionDC As New DAL.RegionsDataContext
''# create a (q)uery variable'
Dim q As Object
''# if the querystring PID is not blank'
''# then we want to return results based on the PID'
If Not qs Is Nothing Then
''# that fit within the Parent ID'
q = (From r In RegionDC.bt_Regions _
Where r.PID = qs _
Select r.Region).ToArray
''# now we loop through the array'
''# and write out the ressults'
For Each item In q
HttpContext.Current.Response.Write(item & vbCrLf)
Next
End If
End Using
End Sub
Итак, где я сейчас нахожусь, так это то, что я наткнулся на часть " Part " метода автозаполнения, в результате чего я должен возвращать только информацию, содержащуюся в части.
У меня вопрос: как мне реализовать эту концепцию в моем HTTPHandler, не выполняя новый SQLQuery при каждом изменении символа? IE: я делаю SQL-запрос к QueryString ("ID") , а затем при каждой последующей загрузке того же идентификатора мы просто отфильтровываем "Part".
http://www.example.com/ReturnRegions.axd?ID=[someID]&Part=[string]