让Windows Phone更加简单地使用Sockets 已翻译 100%

彭博 投递于 2012/11/27 19:13 (共 5 段, 翻译完成于 11-27)
阅读 221
收藏 0
0
加载中
TcpClient 是一个能通过网络接收或发送数据的.net类,它将 sockets底层复杂的工作细节隐藏起来,让开发者更加简单的利用Tcp套接字来开发程序。但悲剧的是在Windows Phone专用的.net framework下是无法使用它的。
彭博
翻译于 2012/11/27 19:16
1
SocketEx.TcpClient -- 一个让Windows Phone能用的非官方没有测试保证的TcpClient
SocketEx.TcpClient 是一个致力于让Windows Phone也能用上sockets的类库,基于MIT授权。当然与完全版.net framework的TcpClient肯定是没法比的,无论是功能多少还是稳定性方面。

忘了说,这个类库是完全运行在同步模式上的(这一点与WP7的标准开发模式恰好相反)。这也就意味着使用它会 阻止前端UI的运行。而且本类库也没经过大量的测试,这些代码是基于codeplex上的“ Crystalbyte Networking for Silverlight” 项目的。
彭博
翻译于 2012/11/27 19:16
1
如何使用:
通过SocketEx.TcpClient你完全不需要涉及那些很底层的Socket以及SocketAsyncEventArgs类。你只需要创建一个TcpClient然后通过StreamReader或者StreamWriter来操作它的流。
这里要谈到我以前写过的几篇文章谈到如何操作内建的Socket以及SocketAsyncEventArgs类。
好了,让我们开始吧。
SocketEx.TcpClient -- 如何打开连接
这里只需要传递服务器地址以及服务器端口给TcpClient作为参数就行了。
var serverAddress = "www.google.fi";
var serverPort = 80;
 
var connection = new TcpClient(serverAddress, serverPort);


彭博
翻译于 2012/11/27 19:17
1
SocketEx.TcpClient -- 如何接受消息
这里使用StreamReader来接受消息。
var connection = CreateConnection();
var stream = connection.GetStream();
 
var reader = new StreamReader(stream);
 
string message;
while ((message = reader.ReadLine()) != null)
{
    Debug.WriteLine(message);
}


彭博
翻译于 2012/11/27 19:18
1
SocketEx.TcpClient -- 如何发送信息
这里需要StreamWriter来发送消息
var connection = CreateConnection();
var stream = connection.GetStream();
 
using (var writer = new StreamWriter(stream))
{
    var request = "GET / HTTP/1.1\r\nHost: " + serverAddress + "\r\nConnection: Close\r\n\r\n";
 
    writer.WriteLine(request);
}

彭博
翻译于 2012/11/27 19:19
1
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
加载中

评论(0)

返回顶部
顶部