Asp.net AutoCompleteXtender在部署后不工作

Asp.net AutoCompleteXtender在部署后不工作,asp.net,asp.net-ajax,ajaxcontroltoolkit,autocompleteextender,Asp.net,Asp.net Ajax,Ajaxcontroltoolkit,Autocompleteextender,我有几个用于gridview文本框的AutoCompleteTextender,它们在我的计算机上工作得非常好,但在我将其部署到服务器上后,AutoComplete不会显示任何内容,也不会显示任何错误。我比较了两个web.config,它们都与程序集中的web.extensions相同,ajaxtoolkit版本也相同。我有calenderextender,即使在部署后也能正常工作。 这是我的gridview和webmethod。如果需要,我将添加web.config。谢谢 <%@ Imp

我有几个用于gridview文本框的AutoCompleteTextender,它们在我的计算机上工作得非常好,但在我将其部署到服务器上后,AutoComplete不会显示任何内容,也不会显示任何错误。我比较了两个web.config,它们都与程序集中的web.extensions相同,ajaxtoolkit版本也相同。我有calenderextender,即使在部署后也能正常工作。 这是我的gridview和webmethod。如果需要,我将添加web.config。谢谢

<%@ Import Namespace="System.Data.SqlClient" %> 
<%@ Import Namespace="System.Data" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<script type="text/javascript" runat="server">
    <System.Web.Services.WebMethod()> _
    Public Shared Function GetCompletionList(ByVal prefixText As String, ByVal count As Integer, ByVal contextKey As String) As String()
        If count = 0 Then
            count = 10
        End If
        Dim collname As String = contextKey
        Dim dt As DataTable = GetRecords(prefixText, collname)
        Dim items As New List(Of String)(count)

        For i As Integer = 0 To dt.Rows.Count - 1
            Dim strName As String = dt.Rows(i)(0).ToString()
            items.Add(strName)
        Next
        Return items.ToArray()
    End Function

    Public Shared Function GetRecords(ByVal strName As String, ByVal collname As String) As DataTable
        Dim strConn As String = ConfigurationManager.ConnectionStrings("MyConnectionString").ConnectionString
        Dim con As New SqlConnection(strConn)
        Dim cmd As New SqlCommand()
        cmd.Connection = con
        cmd.CommandType = System.Data.CommandType.Text
        cmd.Parameters.AddWithValue("@testname", strName)
        cmd.CommandText = "select Distinct " + collname + " from Test where " + collname + " LIKE '%' + @testName + '%'"
        Dim objDs As New DataSet()
        Dim dAdapter As New SqlDataAdapter()
        dAdapter.SelectCommand = cmd
        con.Open()
        dAdapter.Fill(objDs)
        con.Close()
        Return objDs.Tables(0)

    End Function
</script> 
/*Gridview edit template */
<ajaxToolkit:ToolkitScriptManager  ID="ScriptManager1" runat="server" EnablePageMethods="true">
    </ajaxToolkit:ToolkitScriptManager>
<EditItemTemplate>
<asp:TextBox ID="txttest" runat="server" Text='<%# Bind("testcol") %>'></asp:TextBox>
<ajaxToolkit:AutoCompleteExtender
            runat="server"
            ID="AutoCompleteExtender"
            TargetControlID="txttest" 
            ServiceMethod="GetCompletionList" MinimumPrefixLength="1"   EnableCaching="true" ContextKey="testcol" UseContextKey="true" 
            CompletionSetCount="20" ViewStateMode="Inherit">    
        </ajaxToolkit:AutoCompleteExtender>

我想可能是产生了一些错误,但你只是看不到而已。您是否尝试过使用fiddler 2或Firefox的web控制台查看应用程序发送/接收的服务器消息?我没有尝试fiddler,但我已将网站数据复制到我的计算机,现在它甚至在我的计算机中也无法工作。我在想我的web.config或sql数据有问题。以前我的数据库中的数据较少。我会用fiddler测试一下,然后告诉你。感谢您的回复。{Message:Authentication failed.,StackTrace:null,ExceptionType:System.invalidoOperationException}这是它在Fiddler中显示的错误,可能与您的数据库连接有关。尝试从GetRecords函数返回一个硬编码的表,看看这是否有效,而不是连接到数据库来填充表。我不认为这是数据库连接,因为getcompletionlist没有被触发,我在那里有一个断点。我在fiddler中看到了这个错误。看起来像是身份验证问题,但不知道如何解决。