10

我有一个通过 TCP/IP 进行通信的客户端-服务器应用程序。
我使用System.Net.Sockets.Socket类型对象通过 TCP 进行异步通信。基本上我打开连接发送/接收数据并关闭连接。而我的实现是基于 Socket 类型的对象。
现在我需要使用第三方 dll 来做一些事情。这个 dll 需要一个System.IO.Stream类型对象。所以我需要获取我的Socket对象的Stream对象。 我怎样才能做到这一点? 谢谢你。

4

2 回答 2

18

真的很简单。NetworkStream 类的构造函数接受要包装的套接字:

http://msdn.microsoft.com/en-us/library/system.net.sockets.networkstream.aspx

// NOTE: This demonstrates disposal of the stream when you are 
// done with it- you may not want that behavior.
using (var myStream = new NetworkStream(mySocket)) {
    my3rdPartyObject.Foo(myStream);
}
于 2012-05-09T15:31:33.910 回答
1

试试看 System.Net.Sockets.SocketType.Stream ?

或者尝试查看 System.Net.Sockets.NetworkStream ?

http://msdn.microsoft.com/en-us/library/system.net.sockets.networkstream.aspx

于 2012-05-09T15:37:15.513 回答