"非通用方法' xxx'不能与类型参数一起使用"使用Web服务时出错

时间:2014-06-04 02:28:24

标签: c# asp.net web-services generics asmx

我在C#Web服务中有以下内容:

namespace ProductPieceManagement_WS {
    public enum ProductType {
        Unknown = -1,
        SellItem = 0,
        RentalItem = 2
    }

    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    public class ProductPieceManagement : WebService {
        [WebMethod]
        public string GetProductTypeEnumIDs() {
            return GetEnumIDs<ProductType>();
        }

        [WebMethod]
        public string GetEnumIDs<T>() {
            /* Returns a comma-delimited list of values from the specified Enum "T". */
            ...some code...
        }
    }
}

,在我的ASP.Net页面中:

ProductPieceManagement ppm = new ProductPieceManagement();

string myVar = ppm.GetProductTypeEnumIDs();

这一切都很好。但是,如果我将其更改为:

ProductPieceManagement ppm = new ProductPieceManagement();

string myVar = ppm.GetEnumIDs<ProductType>();

我收到以下错误:

  

非通用方法   &#39; ProductPieceManagement_WS.ProductPieceManagment.GetEnumIDs()&#39;不能   与类型参数一起使用

我们的想法是摆脱&#34; GetProductTypeEnumIDs&#34;,因为我必须在整个网站中使用不同的枚举做类似的事情。我不想为每个人创建一个单独的方法。

任何人都可以帮我摆脱错误,并保持通用功能吗?或者,这不是Web服务的选项吗?

0 个答案:

没有答案