Веб-служба не работает до тех пор, пока URL не попадет в IE - PullRequest
2 голосов
/ 07 ноября 2011

У нас есть приложение WinForms (.NET 4.0 / C #), которое обращается к нескольким веб-службам.Мы развернули на клиенте, который имеет некоторую функцию прокси на своем брандмауэре (нет настроек прокси в окне «Свойства обозревателя» на клиентском компьютере, но это определенно является прокси-сервером).

Проблема в том, что наше приложение WinForms не будет работать напервый вызов веб-службы.Информация об ошибках не очень полезна, но ясно, что она не может вызывать методы веб-службы.Странно то, что после того, как мы поместили URL-адрес веб-службы (asmx) в Internet Explorer на этот клиентский компьютер, он отлично работает в течение нескольких дней.Как будто IE заставляет маршрутизатор кэшировать некоторую информацию о маршрутизации.

Кто-нибудь еще испытывал это?Есть ли простое исправление, которое мы могли бы реализовать?

Спасибо!

Вот информация об исключении:

Description: The process was terminated due to an unhandled exception.
Exception Info: System.Net.WebException
Stack:

Server stack trace: 
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at     AutoUpdater.Module.WebService.AutoUpdaterWebService.AutoUpdater.ValidateInstallKey(String installKey, String computerIdentifier)
   at AutoUpdater.Module.WebService.Config.ValidateInstallKey()
   at AutoUpdater.Module.RemoteService.ValidateInstallKey()
   at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
   at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(System.Runtime.Remoting.Messaging.IMessage, System.Runtime.Remoting.Messaging.IMessage)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(System.Runtime.Remoting.Proxies.MessageData ByRef, Int32)
   at AutoUpdater.Foundation.Interfaces.IRemoteService.ValidateInstallKey()
   at AutoUpdater.UpdateForm..ctor()
   at AutoUpdater.Program.Main()
...