【发布时间】:2015-08-13 04:08:57
【问题描述】:
我有一段代码,其中有 2 次连续调用一个好的旧 ASMX Web 服务。
service.Url = "http://.....";
service.A(1, 2, 3);
service.B(4, 5, 6);
致电A 即可。但是调用B 会抛出404... not found... 在发现中,这两种方法都是可见的并且看起来很好——我在IE 中都看到了,元数据看起来不错。我在B 中放置了断点,它绝对没有命中。我确实重建了,Update Web Service 在消费项目中引用并重建了它。
状态为WebExceptionStatus.ProtocolError。
失败的网络方法的签名
<WebMethod(Description:="Store a fragment of object on server.")> _
Public Function B(
ByVal p1 As String,
ByVal p2 As String,
ByVal p3() As Byte,
ByVal p4 As Integer,
ByVal p5() As Byte) As Boolean
通话已(已验证)
bool result = service.B(string, string, byteArray1, int, byteArray2);
同样,未达到 WebMethod B。 Web 参考代理和所有 - 看起来不错。 会是什么?
【问题讨论】:
-
您的服务可能有错误的 url 尝试设置服务的 url 以更正 url 像 service.Url = "http://
/directory/service1.asmx"; -
@Adil 这正是我们所做的。 Ulr 在调用
A和B之前设置 -
复制该 url 并浏览,如果没问题,然后重建您的服务,更新引用并重建消费应用程序
-
@Turbulence 您到底需要什么? - 很明显,相同的 url,相同的代码库,2 种方法,一种没有以编程方式响应(未找到),但是当您将此 URL 放入 IE 地址栏并且在那里看起来不错时,它就在那里
-
@Adil 完成了这一切。这就是我问这个问题的原因。可能是环保的。或者,可能有人知道一些事情,例如,如何巧妙地识别这个问题
标签: c# asp.net web-services