Silverlight Socket.ConnectAsync метод никогда не вызывает событие Completed - я использую 127.0.0.1:4510. Я настроил IIS для обслуживания файла clientaccesspolicy.xml на порту 943.
Я использую следующий код:
        SocketAsyncEventArgs args = new SocketAsyncEventArgs();
        //args.UserToken = tcp;
        args.RemoteEndPoint = ep;
        args.Completed += new EventHandler<SocketAsyncEventArgs>(OnConnect);
        mrEvent.Reset();
        bool x = tcp.ConnectAsync(args);
        mrEvent.WaitOne();
    private void OnConnect(object sender, SocketAsyncEventArgs e)
    {
        isConnected = (e.SocketError == SocketError.Success);
        mrEvent.Set();
    }
Метод OnConnect никогда не вызывается и, как результат, блокирует код из-за метода WaitOne.
Примечание. Этот код выполняется в фоновом потоке, поэтому из-за вызова WaitOne нет взаимоблокировки.
