网络托管服务支持C#

时间:2014-01-11 06:27:57

标签: c# php mysql asp.net hosting

我正在开发一个C#应用程序,它使用.Net System.Net.WebRequest通过php与MySQL服务器通信。它工作正常,直到我将我的网络托管服务切换到BlueHost。我的应用程序不再有效,相反,我收到错误消息“WebException:远程服务器返回错误:(503)服务不可用。”。我联系了BlueHost技术支持,并被告知他们不支持C#。

我不知道Web服务器必须“支持”System.Net.WebRequest?!我很困惑。我可能会切换回旧的托管服务,但我想了解更多有关此问题的信息。

有人可以为了安心而向我解释这个吗?非常感谢!

杰森

1 个答案:

答案 0 :(得分:0)

如果您能够使用网络浏览器访问您的PHP网络应用程序 - 那么您应该能够通过C#应用程序发出网络请求。

您可以尝试从WebException中读取Response属性 - 它可能会为您提供有关出错的更多信息。有关如何执行此操作的示例,请参阅此答案https://stackoverflow.com/a/10107490/138392

此外,您的C#应用​​程序是否位于Web代理后面?有关强制HttpWebRequest使用默认代理设置的方法,请参阅https://stackoverflow.com/a/18013509/138392

另外,您是否尝试过设置WebRequest的UserAgent属性?尝试:

request.UserAgent = @"Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)";

就个人而言,我更喜欢在发出Web请求时使用WebClientHttpClient类,因为许多样板​​代码都被抽象掉了。在使用Web API时,RestSharp库也非常有用。