0

我在.net中有这个方法

    public static SocketAwaitable AcceptAsync(this Socket socket,
                                              SocketAwaitable awaitable)
    {
        awaitable.Reset();
        if (!socket.**AcceptAsync(awaitable.EventArgs))**
            awaitable.WasCompleted = true;
        return awaitable;
    }

将此代码移植到 silverlight 会导致此错误

错误 1“System.Net.Sockets.Socket”不包含“AcceptAsync”的定义,并且最佳扩展方法重载“SLAsyncAwaitSocketProxy.SocketExtensions.AcceptAsync(System.Net.Sockets.Socket, SLAsyncAwaitSocketProxy.SocketAwaitable)”有一些无效参数

据我了解,silverlight 没有 System.Net.Socket.Socket.AcceptAsync。我可以使用任何等效的方法吗?有什么建议吗?

4

1 回答 1

3

Accept用于接收传入的套接字连接;出于安全原因,这在 Silverlight 或大多数其他托管平台上是不可能的。

您需要Silverlight 应用程序连接到服务器。一旦建立连接,数据就可以双向流动。

一种可能的替代方案是 SignalR。

于 2013-11-01T00:09:40.793 回答