Ajax自动完成Web服务调用 - 服务方法,我是否正确地调用了这个?

时间:2008-09-04 21:01:42

标签: c# asp.net asp.net-ajax

好的,所以我的webservice中的方法需要传递一个类型,它在AutoCompleteExtender的ServiceMethod属性中调用,我对我应该怎么做我很模糊所以我这样调用它:

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

其中subCategory是一个如下所示的页面属性:

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

2 个答案:

答案 0 :(得分:2)

您可以使用AutoCompleteExtender的ContextKey参数来使用接受类型名称作为其上下文键的单个Web方法。然后在web方法中,使用reflection和该参数返回所需的字符串[]。

答案 1 :(得分:1)

我不认为可以在网络服务上调用通用方法。

如果你看两个相同方法的服务描述,一个是通用的,一个不是:

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

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

他们是完全相同的。似乎SOAP 1.x和HTTP POST都不允许这种类型的操作。