Llamada al servicio web de autocompletar Ajax: método de servicio, ¿estoy llamando a esto correctamente?

StackOverflow https://stackoverflow.com/questions/44771

  •  09-06-2019
  •  | 
  •  

Pregunta

Bien, entonces mi método en mi servicio web requiere que se pase un tipo, se llama en la propiedad ServiceMethod de AutoCompleteExtender, no sé cómo debo hacerlo, así que lo llamé así:

ServiceMethod="DropDownLoad<<%=(typeof)subCategory%>>"

donde subCategoría es una propiedad de página similar a esta:

protected SubCategory subCategory
{
    get
    {
        var subCategory = NHibernateObjectHelper.LoadDataObject<SubCategory>(Convert.ToInt32(Request.QueryString["SCID"]));
        return subCategory;
    }
}
¿Fue útil?

Solución

No creo que sea posible llamar a un método genérico en un servicio web.

Si nos fijamos en la descripción del servicio de dos métodos idénticos, uno genérico y otro no:

[WebMethod]
public string[] GetSearchList(string prefixText, int count)
{
}

[WebMethod]
public string[] GetSearchList2<T>(string prefixText, int count)
{
}

Son idénticos.Parece que tanto SOAP 1.x como HTTP POST no permiten este tipo de operación.

Otros consejos

Puede usar el parámetro ContextKey de AutoCompleteExtender para usar un único método web que acepte un nombre de tipo como clave de contexto.Luego, en el método web, use la reflexión y ese parámetro para devolver la cadena deseada [].

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top