使用凭据为NetCFSvcUtil创建的客户端添加Web代理

时间:2010-02-12 19:35:36

标签: wcf compact-framework proxy microsoft-sync-framework

我们已经在http://wcfguidanceformobile.codeplex.com/的指导下实现了用于同步框架通信的WCF服务。客户端由NetCFSvcUtil创建。

当需要Web代理支持时,我们遇到了问题。 如何使用它启用凭据?

在HttpTransportBindingElement上我们可以设置proxyadress,但由于我们的proyx需要登录,因此不会这样做。

尝试将UseDefaultWebProxy设置为true时,它仍然不会使用任何凭据。它连接到代理但得到

Error 407: Proxy authentication required

在SO或msdn上找不到任何关于它的信息。任何人都有线索在哪里看?

1 个答案:

答案 0 :(得分:2)

在Compact Framework中,使用静态GlobalProxySelect.Select属性设置所有HttpWebRequests使用的全局代理,包括WCF服务调用。

GlobalProxySelect.Select = new WebProxy(...);

为了在WCF中工作,HttpTransportBindingElement属性必须是

  • ProxyAddress = null(默认)
  • UseDefaultWebProxy = true(默认)

GlobalProxySelect类在完整框架中已弃用,因此您应该使用WebRequest.DefaultWebProxy代替。