【发布时间】:2014-01-23 10:39:46
【问题描述】:
我用 C# 编写了一个 ClickOnce 应用程序,它需要在任何防火墙、代理设置或防病毒等后面的任何电脑上运行,因为我的用户遍布全国。
在我 95% 的用户中,XmlRpc 调用确实到达了数据库服务器。以下是我迄今为止尝试过的事情:
- 使用
WebRequest.DefaultWebProxy.GetProxy(url).ToString();获取正确的代理网址。 - 将上面找到的代理分配给 XmlRpc 代理对象。
- 使用
CredentialCache.DefaultNetworkCredentials;设置 XmlRpc 对象的凭据 - 为 XmlRpc 对象设置
AllowAutoRedirect = true; - 为代理对象设置
KeepAlive = true; - 为代理对象设置
Expect100Continue = false; - 我使用默认超时时间 100000 毫秒
在启动 Fiddler 2 后的某些问题电脑上,与 MySql 数据库的通信开始工作。我宁愿不在所有有问题的电脑上安装 Fiddler 2。
我的问题是我还能做什么或检查以确保所有 XmlRpc 调用都到达 MySql 服务器。上述查找代理网址的方法是否 100% 可靠?或者我可以用另一种 100% 可靠的通信方法替换 XmlRpc 吗?
我使用 XmlRpc .Net 2.5.0 进行通信,使用 .Net 3.5 进行我的应用程序。 据我所知,XmlRpc 调用是端口 80 上的正常 http 调用。
感谢任何建议。
【问题讨论】:
-
也许我应该升级到 XmlRpc .Net 3.0.0 版?
标签: c# mysql proxy clickonce xml-rpc