我需要发布一个带有可变数量参数的Web服务。 我的问题是调用者只能发送简单的参数(原始数据类型)而不是xml,数组或列表。
所以我想动态生成wsdl,这样如果调用者尝试访问我的webservice,例如http://myendpoint:myport/baseWsName_numberOfParameter?wsdl,那么就会提供一个带有可自定义数量参数的wsdl(并且调用者可以使用该版本的WebService),参数可以是我的场景中的所有类型字符串
我想避免为任何合理数量的参数手动定义大量的重载。
答案 0 :(得分:1)
如果我正确理解了您的问题,并且客户端无法传递数组,那么使用逗号分隔字符串是一个不错的选项,您可以使用AppDomain.DefineDynamicAssembly
和ServiceDescriptionReflector
Creating and exposing a SOAP service and its WSDL dynamically in C# 3}}