重写GetWebRequest方法以将HTTP1.1切换为1.0

时间:2013-07-15 14:12:38

标签: c# web-services http cisco-axl

我在Cisco AXL web service中使用.NET

问题是,它不允许我覆盖GetWebRequest方法来更改HTTP版本。

我正在关注此文档,该文档为我提供了以下代码以添加http://www.cisco.com/en/US/docs/voice_ip_comm/cucm/devguide/9_1_1/axl.html#wp1055254

 protected override System.Net.WebRequest GetWebRequest(Uri uri)
 {
    System.Net.HttpWebRequest request = base.GetWebRequest(uri) as System.Net.HttpWebRequest;
    request.ProtocolVersion = System.Net.HttpVersion.Version10;
    return request;
 }

我在扩展SoapHttpClientProtocl的类中有这个代码。我搜索了一下,我发现人们有同样的问题,但没有明确的答案如何解决它。我希望有人在这里有答案。

谢谢!

1 个答案:

答案 0 :(得分:0)

我不完全确定修复了什么,但这就是我所做的,

1。)我添加了WSDL作为服务引用,尽管我使用wsdl.exe来编译API。

2.。)将.NET框架切换为4.5而不是4.0客户端配置文件。

3。)将编译后的代码放在项目目录中,尽管我做了第1步。

4.。)取消注释了很多自动生成的代码,我知道我肯定不会使用,调试器抱怨XmlSerializer错误。

5.。)从工具 - >打开“仅我的代码”选项 - >调试 - >一般

6。)将思科希望我们添加的一些代码移到单独的类中,并在自动生成的代码中调用它们。

希望有一天这会对某人有所帮助!!