I posted this earlier but never got a response, I have a WebService
that pulls info from a DB. I then have an ajax autocomplete textbox
that grabs this info from the WebService. In firebug, i get 500 error
reading this


{"Message":"Invalid web service call, missing value for parameter:
\u0027query\u0027.","StackTrace":"
   at System.Web.Script.Services.WebServiceMethodData.CallMethod
(Object target, IDictionary`2 parameters
)\r\n   at
System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams
(Object target, IDictionary
`2 parameters)\r\n   at
System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext
context, WebServiceMethodData
 methodData, IDictionary`2 rawParams)\r\n   at
System.Web.Script.Services.RestHandler.ExecuteWebServiceCall
(HttpContext context, WebServiceMethodData
methodData)","ExceptionType":"System.InvalidOperationException"
}

the webservice works fine when ran by itself, so i figure its a small
mistake i am having, below is the aspx and the asmx page


ASMX
<%@ WebService Language="C#" Class="WebService" %>
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data;
using System.Collections.Generic;
[WebService(Namespace = "http://tempuri.org/";)]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService
{
    [WebMethod(Description = "Input a string and this will return all
the players with that string in their names")]

    public string[] GetPlayer(string query)    {


        string strSQL = "Select nameFirst, nameLast from FullMaster
where (nameFirst LIKE '" + query + "%') or (nameLast like '" + query +
"%')";
        DataAccess objDataAccess = new DataAccess("BaseballDatabase");
        DataTable dt = new DataTable();
        dt = objDataAccess.FillDataTable(strSQL);
        //Note: web services can return DataSets but not DataTables.
         List<string> items = new List<string>(dt.Rows.Count);
        foreach (DataRow dr in dt.Rows)
        {
            string c1 = Convert.ToString(dr["nameFirst"]) + " " +
Convert.ToString(dr["nameLast"]);
            items.Add(c1);

        }
        return items.ToArray();
    }
}

ASPX page

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master"
%>

<%@ Register Assembly="AjaxControlToolkit"
Namespace="AjaxControlToolkit" TagPrefix="cc1" %>

<script runat="server">

</script>

<asp:Content ID="Content1" ContentPlaceHolderID="MainForm"
Runat="Server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    <Services>
    <asp:ServiceReference Path="Player.asmx" />
    </Services>
    </asp:ScriptManager>
    <asp:TextBox ID="TextBox1" runat="server" Height="45px"
Width="312px"></asp:TextBox>
    <cc1:AutoCompleteExtender ID="TextBox1_AutoCompleteExtender"
runat="server"
        TargetControlID="TextBox1" ServicePath="Player.asmx"
ServiceMethod="GetPlayer" MinimumPrefixLength="3" >
    </cc1:AutoCompleteExtender>
    <br /><br /><br />
</asp:Content>


I would greatly appreciate some help, thanks for all that you guys do

Reply via email to