Сбой разработки Azure с использованием SocketException при использовании DotNetOpenAuth - PullRequest
3 голосов
/ 22 апреля 2010

Я пытаюсь запустить веб-сайт ASP.NET MVC 2 под Windows Azure Dev Fabric, используя аутентификацию DotNetOpenAuth OpenID.

Сама ткань Azure Dev неоднократно вылетает (dfloadbalancer.exe) при аутентификации.

Существуют ли обходные пути для этой проблемы, позволяющие использовать ткань Azure Dev и DotNetOpenAuth?

Похоже, что в MSDN есть старое обсуждение по той же проблеме, которая была оставлена.

System.Net.Sockets.SocketException was unhandled
  Message=An existing connection was forcibly closed by the remote host
  Source=System
  ErrorCode=10054
  NativeErrorCode=10054
  StackTrace:
       at System.Net.Sockets.Socket.Shutdown(SocketShutdown how)
       at Microsoft.ServiceHosting.Tools.DevelopmentFabric.LoadBalancer.ConnectionInfo.Release()
       at Microsoft.ServiceHosting.Tools.DevelopmentFabric.LoadBalancer.ServerConnector.Stop()
       at Microsoft.ServiceHosting.Tools.DevelopmentFabric.LoadBalancer.PacketForwarder.ProcessReceive(IAsyncResult result)
       at System.Net.LazyAsyncResult.Complete(IntPtr userToken)
       at System.Threading.ExecutionContext.runTryCode(Object userData)
       at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Net.ContextAwareResult.Complete(IntPtr userToken)
       at System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
       at System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
       at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
  InnerException: 

Последние сообщения журнала перед сбоем:

[WaWebHost.exe] Redirecting to http://www.myopenid.com/server?openid.claimed_id=http%3A%2F%2Fxxxxxx.myopenid.com%2F&openid.identity=http%3A%2F%2Fxxxxxx.myopenid.com%2F&openid.assoc_handle=xxxxxxx&openid.return_to=http%3A%2F%2F127.0.0.1%2Fuser%2FAuthenticate%3FReturnUrl%3D%26dnoa.userSuppliedIdentifier%3Dhttp%253A%252F%252Fxxxxxxxx.myopenid.com%252F&openid.realm=http%3A%2F%2F127.0.0.1%2F&openid.mode=checkid_setup&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0
[fabric] Role state Unresponsive

1 Ответ

1 голос
/ 28 августа 2010

Я столкнулся с этой проблемой при использовании следующего утверждения:

return request.RedirectingResponse.AsActionResult();

Я исправил это, изменив строку на:

string location = request.RedirectingResponse.Headers["Location"];
return Redirect(location);

По неизвестным мне причинам это обошлосьошибка и позволила мне вернуться к делу, не внося никаких особых изменений в мою среду разработки.

...