I have a large dataset that I am filling a combobox with via web service. The dropdown and service work, but when I select an item from the dropdown I get "The server method MyMethod failed ", then the page processes and completes the request just like it should. Does anyone have any suggestions on how to stop the error box from popping up? or stop it from erroring at all. Any help would be great.
Thanks
Thanks
[WebMethod]
public RadComboBoxData GetAltIdId(RadComboBoxContext context)
{
string sql = "SELECT ALTID, ID FROM PEOPLE WHERE ID LIKE @text + '%'";
SqlDataAdapter adapter = new SqlDataAdapter(sql,
ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
DataTable data = new DataTable();
adapter.SelectCommand.Parameters.AddWithValue("@text", context.Text);
adapter.Fill(data);
List<
RadComboBoxItemData
> result = new List<
RadComboBoxItemData
>(context.NumberOfItems);
RadComboBoxData comboData = new RadComboBoxData();
try
{
int itemsPerRequest = 10;
int itemOffset = context.NumberOfItems;
int endOffset = itemOffset + itemsPerRequest;
if (endOffset > data.Rows.Count)
{
endOffset = data.Rows.Count;
}
if (endOffset == data.Rows.Count)
{
comboData.EndOfItems = true;
}
else
{
comboData.EndOfItems = false;
}
result = new List<
RadComboBoxItemData
>(endOffset - itemOffset);
for (int i = itemOffset; i <
endOffset
; i++)
{
RadComboBoxItemData
itemData
=
new
RadComboBoxItemData();
itemData.Text
=
data
.Rows[i]["ID"].ToString();
itemData.Value
=
data
.Rows[i]["ALTID"].ToString();
result.Add(itemData);
}
if (data.Rows.Count > 0)
{
comboData.Message = String.Format("Items <
b
>1</
b
>-<
b
>{0}</
b
> out of <
b
>{1}</
b
>", endOffset.ToString(), data.Rows.Count.ToString());
}
else
{
comboData.Message = "No matches";
}
}
catch (Exception e)
{
//comboData.Message = e.Message;
}
comboData.Items = result.ToArray();
return comboData;
}}
-----------------------------------------------
<
script
type
=
"text/javascript"
>
function OnClientItemsRequesting(sender, eventArgs) {
var context = eventArgs.get_context();
context["FilterString"] = eventArgs.get_text();
}
</
script
>
<
telerik:RadComboBox
runat
=
"server"
ID
=
"RadComboBox1"
OnSelectedIndexChanged
=
"RadComboBox1_SelectedIndexChanged"
OnClientItemsRequesting
=
"OnClientItemsRequesting"
EnableLoadOnDemand
=
"true"
ItemsPerRequest
=
"10"
ShowMoreResultsBox
=
"True"
EnableVirtualScrolling
=
"True"
Filter
=
"Contains"
EmptyMessage
=
"Enter A#"
AppendDataBoundItems
=
"true"
AutoPostBack
=
"true"
>
<
WebServiceSettings
Method
=
"GetAltIdId"
Path
=
"../PeopleSearch.asmx"
/>
</
telerik:RadComboBox
>
--------------------------------
protected void RadComboBox1_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e)
{
string url = Path.GetFileName(Request.Path);
url += "?HNUMBER=" + RadComboBox1.SelectedValue.ToString();
Response.Redirect(url);
}