Completar automaticamente o ERROR 404 em HTML (usando ASP.NET e JQuery)

Sep 10 2020

Por alguma razão no projeto asp.net, meu autocomplete não funciona, eu tentei métodos diferentes de usar a fonte de dados na conexão de dados, mas sem sucesso. Já criei um banco de dados para ele chamado Diagnose, mas por algum motivo, ele exibe o erro 404 no jquery.

Aqui está meu código HTML:

<script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-1.8.0.js"></script>
<script src="https://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.22/jquery-ui.js"></script>
<script>
    $(function () { $("#search-diagnosis").autocomplete({
            source: function (request, response) {
                var param = {
                    searchdetails: $('#search-diagnosis').val() }; $.ajax({
                    url: "SearchController.cs/GetSearch",
                    data: JSON.stringify(param),
                    type: "post",
                    contentType: "application/json; charset=utf-8",
                    dataFilter: function (data) { return data; },
                    success: function (data) {
                        response($.map(data.d, function (item) { return { value: item } }))
                    },
                });
            },
            minLength: 1
        });
    });
</script>


<div class="search">
    <input id="search-diagnosis" class="w-75" type="text" placeholder="Start typing your diagnois...">
</div>

Aqui está o código CS:

[WebMethod]
public static List<string> GetSearch(string searchdetails)
{
    List<string> search = new List<string>();
    string mainconn = ConfigurationManager.ConnectionStrings["mybase.database"].ConnectionString;
    SqlConnection sqlconn = new SqlConnection(mainconn);
    string sqlquery = string.Format("select Name from [dbo].[Diagnose] where Name LIKE '%{0}%'", searchdetails);
    sqlconn.Open();
    SqlCommand sqlcomm = new SqlCommand(sqlquery, sqlconn);
    SqlDataReader sdr = sqlcomm.ExecuteReader();
    while (sdr.Read())
    {
        search.Add(sdr.GetString(0));
    }
    sqlconn.Close();
    return search; 
}

Ele exibe o erro:

Quando eu abro jquery-1.8.0.js:8214ele me mostra issoxhr.send( ( s.hasContent && s.data ) || null );

Estou preso neste problema por um tempo, então qualquer ajuda seria ótima, desde já agradeço: D <3

Respostas

Kev Sep 10 2020 at 20:11

Ele está retornando 404 não encontrado. Eu acho que GetSearch deve estar dentro de um arquivo aspx ou ascx. Webmethod funciona no contexto System.Web e em algum ponto exigirá Page.