我有一个客户端 - 服务器应用程序,它通过TCP / IP进行通信
我使用System.Net.Sockets.Socket
类型对象进行TCP上的ascnyronous通信。基本上我打开连接发送/接收数据并关闭连接。我的实现基于Socket类型的对象
现在我需要使用第三方dll来做某事。这个dll需要一个System.IO.Stream
类型的对象。所以我需要获取 Socket 对象的 Stream 对象。
我怎么能这样做?
谢谢。
答案 0 :(得分:17)
非常简单。 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);
}
答案 1 :(得分:1)
尝试查看System.Net.Sockets.SocketType.Stream?
或者尝试查看System.Net.Sockets.NetworkStream?
http://msdn.microsoft.com/en-us/library/system.net.sockets.networkstream.aspx