如何将通用KeyValuePair <tkey,tvalue>传递给WebMethod?</tkey,tvalue>

时间:2010-07-12 13:45:39

标签: web-services generics key-value

 [WebMethod]
public void Test(KeyValuePair<string,string> details)
{        
}

我已经定义了上面的网络方法。

KeyValuePair的定义 http://schemas.datacontract.org/2004/07/System.Collections.Generic

如何将其添加到我的wsdl自动生成的文件中? 我必须定义这种类型,因为否则我在wsdl文件中得到一个空的定义:

<s:complexType name="KeyValuePairOfStringString" />

2 个答案:

答案 0 :(得分:2)

对于该特定问题,我建议将签名更改为

public void Test(string key, string value) 

因为我从来没有使用网络服务来很好地使用泛型。如果您有任何其他类似问题的方法,您可以使用自动生成的代理类,或者将对象作为对象传递并在Web方法中强制转换。

答案 1 :(得分:1)

我也有这个问题。看起来我现在必须创建一个特定的类。