请求失败,HTTP状态为417:期望失败 – 使用Web服务

几分钟前,我正在开发visual studio 2010中的一个项目,突然我的电脑重新启动了。
重新启动后,我在本地机器上浏览该网站时收到以下错误:

请求失败,HTTP状态为417:期望失败。

描述:执行当前Web请求期间发生未处理的exception。 请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

exception详细信息:System.Net.WebException:请求失败,HTTP状态为417:期望失败。

我的网站名称是: MyWebSite
我在远程服务器(vps)上有一个Web服务,MyWebSite正在使用它并且该错误与它有关系。

 Line 172: [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/MyWebSiteEnable", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] Line 173: public bool MyWebSiteEnable() { Line 174: object[] results = this.Invoke("MyWebSiteEnable", new object[0]); Line 175: return ((bool)(results[0])); Line 176: } 

关于该Web服务,每件事情都可以。
这是什么错误,我该如何解决?
在该Web服务中只有一个简单的bool方法,它返回true。
我在代码隐藏中使用该web服务,如下所示:

 private void CheckForPageExpiration() { MyService service = new MyService(); if (service.MyWebSiteEnable()) { } else { Response.Redirect("~/blank.aspx"); } } 

我删除了该Web服务并再次添加它,但仍然有错误!
那有什么不对?

提前致谢

这表明问题是代理服务器不支持来自服务器的100-continue响应,并显示用于解析它的代码。 这可以解释为什么它适用于另一个网络。

由于您不太可能说服您的ISP改变他们的做法(尽管请求中没有损害),您应该关闭发送100-Continue的行为,因为链接建议:

将此代码放在Web请求之前:

 System.Net.ServicePointManager.Expect100Continue = false; 

或者,将以下行作为标记的子项添加到应用程序配置文件中:

      

在配置文件中添加以下代码行。