Вызов веб-сервиса Ajax Autocomplete — метод обслуживания, правильно ли я это называю?
-
09-06-2019 - |
Вопрос
Итак, мой метод в моем веб-сервисе требует передачи типа, он вызывается в свойстве ServiceMethod AutoCompleteExtender, я не совсем понимаю, как мне это делать, поэтому я назвал его так:
ServiceMethod="DropDownLoad<<%=(typeof)subCategory%>>"
где subCategory — это свойство страницы, которое выглядит следующим образом:
protected SubCategory subCategory
{
get
{
var subCategory = NHibernateObjectHelper.LoadDataObject<SubCategory>(Convert.ToInt32(Request.QueryString["SCID"]));
return subCategory;
}
}
Решение
Я не думаю, что вызов универсального метода в веб-сервисе возможен.
Если вы посмотрите на описание службы двух идентичных методов, одного общего, другого нет:
[WebMethod]
public string[] GetSearchList(string prefixText, int count)
{
}
[WebMethod]
public string[] GetSearchList2<T>(string prefixText, int count)
{
}
Они идентичны.Похоже, что и SOAP 1.x, и HTTP POST не допускают операций такого типа.
Другие советы
Вы можете использовать параметр ContextKey AutoCompleteExtender для использования одного веб-метода, который принимает имя типа в качестве контекстного ключа.Затем в веб-методе используйте отражение и этот параметр, чтобы вернуть нужную строку[].