Tim*_*imS 6 c# asp.net web-services http-get asmx
我有一个ASMX Web服务设置为使用HTTP GET方法.采用基本String和Int参数的简单方法正常工作,我可以MyService.asmx/MethodName?Param=Value用XML 调用并获得响应.
但是,当我有一个具有可空Int(即int?)的方法时,我收到此错误:
<方法名称> Web服务方法名称无效.
错误消息令人困惑,因为该方法确实存在,而不是在GET范围内.我认为这是因为可空类型太复杂而无法通过URL传递,但我找不到任何文档或SO帖子.
我很欣赏Lists或自定义类等复杂类型无法使用GET,但我认为可以原生处理一个简单的可空int或可空日期,只需检测它是否从URL中省略.猜猜不是那么简单!
任何建议或解决方法将不胜感激.
蒂姆,谢谢
nullable int 并不太复杂。它应该产生
<s:element minOccurs="1" maxOccurs="1" name="Param" nillable="true" type="s:int" />
Run Code Online (Sandbox Code Playgroud)
在 WSDL 中。看看这篇文章。错误可能是其他原因,也许?