Chiamata al servizio Web di completamento automatico Ajax - Metodo di servizio, lo chiamo correttamente?

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

  •  09-06-2019
  •  | 
  •  

Domanda

Ok, quindi il mio metodo nel mio servizio web richiede che venga passato un tipo, è chiamato nella proprietà ServiceMethod di AutoCompleteExtender, non sono chiaro su come dovrei farlo, quindi l'ho chiamato in questo modo:

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

dove subCategory è una proprietà della pagina simile a questa:

protected SubCategory subCategory
{
    get
    {
        var subCategory = NHibernateObjectHelper.LoadDataObject<SubCategory>(Convert.ToInt32(Request.QueryString["SCID"]));
        return subCategory;
    }
}
È stato utile?

Soluzione

Non penso che sia possibile chiamare un metodo generico su un servizio web.

Se guardi la descrizione del servizio di due metodi identici, uno generico, uno no:

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

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

Sono identici.Sembra che sia SOAP 1.x che HTTP POST non consentano questo tipo di operazione.

Altri suggerimenti

È possibile utilizzare il parametro ContextKey di AutoCompleteExtender per utilizzare un singolo metodo Web che accetta un nome di tipo come chiave di contesto.Quindi, nel metodo web, utilizza la riflessione e quel parametro per restituire la stringa desiderata[].

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top