AJAX :: Web Service Method With Parameter Isn't Calling With Autocomplete Text Box Extender
Feb 22, 2011
web service method(getMainHeads) with parameter is not calling with auto complete text box extender(same method with out parameter is calling fine). My Service is
[System.Web.Script.Services.
ScriptService]
public
class
InvService : System.Web.Services.WebService
{
ItemMainHeadMsts objItemMainHeadMsts;
DatabaseHelper objDataHelper;
[WebMethod]
public
string[] GetMainHeads(string value)
{
List<string>
oList = new
List<string
>();
objItemMainHeadMsts =
new
ItemMainHeadMsts
();
objDataHelper =
new
DatabaseHelper
();
objItemMainHeadMsts =
ItemMainHeadMstBase.SelectByFieldAuto("IMHDesc"
, value);
foreach (ItemMainHeadMst
mainHead in
objItemMainHeadMsts)
{
oList.Add(mainHead.IMHDesc);
}
return
oList.ToArray();..........................
I am using AutoComplete ASP.NET AJAX Control toolkit AutoCompleteExtender control When I am using my web service as Service Path, its not working.my web services code below
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; using System.Data.SqlClient; using System.Data; using System.Web.Script.Services; namespace OnlineSalesGrid { /// <summary> /// Summary description for sample /// </summary> [WebService(Namespace = [URL]] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. // [System.Web.Script.Services.ScriptService] public class sample : System.Web.Services.WebService { [WebMethod] public static string[] GetCompletionList(string prefixText, int count) { List<string> returnData = new List<string>(); SqlConnection con = new SqlConnection("Data Source=CARPATHIA\SQLEXPRESS;Initial Catalog=OnlinesaleGrid;Persist Security Info=True;User ID=sa;Password=c0rpusdata"); string sql = "select Customer_Name from Customer_Master where Customer_Name like '%" + prefixText + "%'"; SqlCommand cmd = new SqlCommand(sql, con); con.Open(); SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); while (reader.Read()) { returnData.Add(reader["Customer_Name"].ToString()); } return returnData.ToArray(); } [WebMethod] public static string[] GetCompletionList1(string prefixText, int count) { List<string> returnData = new List<string>(); SqlConnection con = new SqlConnection("Data Source=CARPATHIA\SQLEXPRESS;Initial Catalog=OnlinesaleGrid;Persist Security Info=True;User ID=sa;Password=c0rpusdata"); string sql = "select Customer_Code,Customer_Name from Customer_Master where Customer_Code like '%" + prefixText + "%'"; SqlCommand cmd = new SqlCommand(sql, con); con.Open(); SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); while (reader.Read()) { returnData.Add(reader["Customer_Code"].ToString()); } return returnData.ToArray(); } } }
i need to pass two parameter in a autocomplete extender.below is my code and here i pass one parameter for autocomplete extender in web service.
[Code]....
here i pass a parameter :prefixtext.but in this query i need to pass one more parameter.i.e in that query one more condition i need like finanicial year. like where upper(reg_no) like @prefix and adm_fnyr=@fnyr.
so how can i pass and execute like this.i mean i need those reg_no which not in hreadmission table in same finanical year.
i have developed a AutoComplete Search with the JAX AutoCompleteExtender Now i found a solution to use these control without a webservice (amsx) you only have the function in the codebehind (default.aspx.cs) , to do this you must let theServicePath empty. In the codebehind of your webpage is only the function which gets the data from the database.Important the function must be static !! Here is a good description: http://allwrong.wordpress.com/2007/03/13/ms-ajax-autocomplete-extender-using-a-page-method/
[Code]....
default.aspx.cs
[Code]....
Let´s come to my problem, i wanted to store these functionality in a webcontrol => AutoCompleteSearch.ascx So i put the code from the default.aspx an .cs in the AutoCompleteSearch.ascx control. After i started the webapplication there was no functionality. So tried to let the
I have an AJAX auto complete extender that calls a web service to generate a string[] for a textbox. Works great, The issue I am having is that I set the OnClientItemSelected property of the auto complete extender to call a JavaScript function that will intern call another web service to get the remaining data I need based on the item that was selected. (I need this because the auto complete web service only allows for key/value pairs and I need to return 10 columns of data) I cannot get the JS function to call the web service. I keep getting "(Namespace) is undefined" as a JS error. I tried to impliment Microsoft's example located at: [URL] but even if I copy there code line for line in a new project, I still encounter the same error.
Samples.AspNet.WebService.Add(a, b,SucceededCallback); //'Samples' is undefined - runtime If I remove the namespace so that it reads: Add(a, b,SucceededCallback); //Endless loop until you get stack overflow error Has anyone got MS C# example to work? I saw a lot of people had this line missing in the web service, but I already had it. [System.Web.Script.Services.ScriptService]
I am not sure about writing the method in the web service. I'm trying to select the client names from sql server, then storing them into an arraylist. Finally, returning the array of names. This is my code:
I have AutocompeteExtender control in my page.it calls web method (in webservice) that have no parameter I have two web methods in webservice Method 1Geist(string PreText, int Count){....}Method 2GetList(){.......}ethod 2 calls.I want to call method 1.
public class WebService : System.Web.Services.WebService { MySql.Data.MySqlClient.MySqlCommand cmd = new MySqlCommand(); MySql.Data.MySqlClient.MySqlConnection con = new MySqlConnection(); //MySqlDataAdapter da = new MySqlDataAdapter(); MySqlDataReader dr; public WebService () { //Uncomment the following line if using designed components //InitializeComponent(); } [WebMethod] public string[] GetCountryInfo(string prefixText) { int count = 10; string sql = "Select * from tbl_patientmaster Where P_NAME like '" + @prefixText + "%'"; con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings["HMSDBConnectionString"].ToString(); con.Open(); MySql.Data.MySqlClient.MySqlDataAdapter da = new MySql.Data.MySqlClient.MySqlDataAdapter(sql, con); da.SelectCommand.Parameters.Add("@prefixText", MySql.Data.MySqlClient.MySqlDbType.VarChar, 50).Value = prefixText + "%"; System.Data.DataTable dt = new System.Data.DataTable(); da.Fill(dt); string[] items = new string[dt.Rows.Count]; int i = 0; foreach (System.Data.DataRow dr in dt.Rows) { items.SetValue(dr["P_NAME"].ToString(), i); i++; } return items; }
auto complete Extender not calling the webservice method the exact problem is ., Am using AutoComplet Extender in Example project its working fine. but the same code(aspx code as well as webservice code) am using in my live project its not calling the web service method. my live project is dotnet 2.0 version
I have a test web service called: MySimpleService.svc with a method called:GetUserNamesByInitials. below is the Linq to SQL code:
[OperationContract] public static string GetUserNamesByInitials(string initials) { string result = ""; [code]...
what I do is to type the user id in one textbox (TextBox3) and when I press the Tab key the result is shown in another textbox(TextBox4). The jQuery call works well with other methods that do not call the database, for example using this other web service method it works:
[OperationContract] public string ParameterizedConnectionTest(string word) { return string.Format("You entered the word: {0}", word); }
However with the Linq method it just does not work.
I am coming across one problem with auto complete extender in my application, problem seems to simple but i can't find any satisfactory solution. In one form, i have set auto complete extender on one text box, i have set one web service, in which one function is there, which fetches existing records from db, on first load, if i write releavent words with that of db, i can't see the extender, but if once either i minimize the page or give tab despite AutoPostBack property of text box is false, then after writing something in text box shows me the extender.
Here are the properties of both text box and extender
Iam getting an array of list from database to client side(javascript array).Now my aim to place those values in a div one by one and that div should attach to the textbox similar to Autocomplete extender.
I implemented autocomplete extender,functionality is working great but my issue is with CSS.It works as expected in Firefox(it applys all stylesheets perect) but in IE it is not behaving as expected it is showing the list about 10 pixels left to the text box.
googled couple of things but none of them were working for me.
i have installed AjaxControlToolkit for framework 3.5 . my application is in virtual folder on the server which has Autocomplete Extender control, when i browse, control is not returning any list nor any error message. it is working fine in the localhost, is it because of the subfolder or any other reason i dont understand