介绍开源的.net通信框架NetworkComms框架之三 传递List
原文网址: http://www.cnblogs.com/csdev
Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 开源地址是:https://github.com/MarcFletcher/NetworkComms.Net
这一节讲一下,如何从服务器获取列表数据
示例图:
客户单点击 获取数据 从服务器返回数据
客户端代码:
private void button4_Click(object sender, EventArgs e) { //GetUserList 是数据的请求消息类型 //ResUserList 是服务器端返回消息类型 当服务器返回ResUserList的数据时 客户端自动对应获取 IList<User> listUser = newTcpConnection.SendReceiveObject<, "); BindData(listUser); } public void BindData(IList<User> theUsers) { listView1.Items.Clear(); listView1.Columns.Clear(); listView1.View = View.Details; //新增的 详细方式 listView1.AllowColumnReorder = true; listView1.FullRowSelect = true; listView1.GridLines = true; listView1.Columns.Add(, HorizontalAlignment.Left); listView1.Columns.Add(, HorizontalAlignment.Left); foreach (User theUser in theUsers) { ListViewItem li = new ListViewItem(); li.SubItems[].Text = theUser.UserID.ToString(); li.SubItems.Add(theUser.Name); listView1.Items.Add(li); } }
服务器端代码:
private void button1_Click(object sender, EventArgs e) { //IP地址和端口 IPEndPoint thePoint = new IPEndPoint(IPAddress.Parse(txtIP.Text), int.Parse(txtPort.Text)); //开始监听此IP和端口 使用TCP协议 Connection.StartListening(ConnectionType.TCP, thePoint); NetworkComms.AppendGlobalIncomingPacketHandler<string>("GetName", IncomingMsgHandle); NetworkComms.AppendGlobalIncomingPacketHandler<User>("UserLong", IncoingHandleLogin); NetworkComms.AppendGlobalIncomingPacketHandler<string>("GetUserList", IncoingHandleGetUserList); button1.Text = "已经开始监听"; }
private void IncoingHandleGetUserList(PacketHeader header, Connection connection, string param) { //模拟一些数据 IList<User> userList=new List<User>(); User user1=new User (); user1.UserID="; user1.Name="天涯共此时"; User user2=new User(); user2.UserID="; user2.Name="海上生明月"; ") { userList.Add(user1); userList.Add(user2); } else { userList.Add(user1); } connection.SendObject("ResUserList", userList); }
源码下载:http://pan.baidu.com/s/1geXMSef
介绍开源的.net通信框架NetworkComms框架之三 传递List的更多相关文章
- 介绍开源的.net通信框架NetworkComms框架 源码分析
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 售价249英镑 我曾经花了 ...
- 介绍开源的.net通信框架NetworkComms框架之二 传递类
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 开源地 ...
- 介绍开源的.net通信框架NetworkComms框架之四 消息边界
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 许可是 ...
- 介绍开源的.net通信框架NetworkComms框架 源码分析(三)PacketHeader
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 许可是 ...
- 介绍开源的.net通信框架NetworkComms框架之一 首字节验证
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 开源地 ...
- 介绍开源的.net通信框架NetworkComms框架之五 心跳检测
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 许可是 ...
- 介绍开源的.net通信框架NetworkComms框架之九 合并DLL
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 许可是 ...
- 介绍开源的.net通信框架NetworkComms
Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 开源地址是:https://github.com/MarcFletcher/ ...
- 介绍开源的.net通信框架NetworkComms框架 源码分析(二)ConnectionInfo
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 许可是 ...
随机推荐
- python中的thread
转载自: http://blog.sina.com.cn/s/blog_9f488855010198vn.html 正确与否未验证 python中得thread的一些机制和C/C++不同:在C/C++ ...
- Dimmer: 通过移动鼠标来改变 LED 的亮度
原文地址 - https://www.arduino.cc/en/Tutorial/Dimmer 调光器 本例展示了如何通过个人电脑发送数据到 Arduino / Genuino 开发板来控制一个LE ...
- percent的用法
select*from test; 先查询所有的结果一共是8条记录 select top(50) percent *from test; 则只查询该表中百分之50的结果集
- Converter转换器使用
package com.xu.javabean; import java.lang.reflect.InvocationTargetException; import java.util.Date; ...
- <-0基础学python.第2课->
今天闲着无聊,有想鼓捣Python了,想实现网络爬虫,帮我下载音乐的功能. 现在网上找了相关的一些文章教程 http://jecvay.com/2014/09/python3-web-bug-seri ...
- C#设计模式——解释器模式(Interpreter Pattern)
一.概述 在软件开发特别是DSL开发中常常需要使用一些相对较复杂的业务语言,如果业务语言使用频率足够高,且使用普通的编程模式来实现会导致非常复杂的变化,那么就可以考虑使用解释器模式构建一个解释器对复杂 ...
- python 核心编程课后练习(chapter 2)
2-4 #2-4(a) print "enter a string" inputstring = raw_input() print"the string is: &qu ...
- MVVM模式下弹出窗体
原地址:http://www.cnblogs.com/yk250/p/5773425.html 在mvvm模式下弹出窗体,有使用接口模式传入参数new一个对象的,还有的是继承于一个window,然后在 ...
- C#的互操作性:缓冲区、结构、指针
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- WCF ajax跨域配置
webconfig必须配置 binding="webHttpBinding" <service name="Hezi.MsgService.Send"&g ...