C#转换IList对象数组为byte数组.然后通过WebService传递
C#转换IList对象数组为byte数组.然后通过WebService传递WebService不能直接传输对象数组但支持传输byte数组, 那么是不是可以将对象数组转换为byte数组。
然后再通过WebService传输? 答案是肯定的!
对象必须是可序列化对象,定义[Serializable]就行
程序下载:
扫一扫加作者微信
然后再通过WebService传输? 答案是肯定的!
private void btnShowData_Click(object sender, EventArgs e)
{
//假设这里是调用WebService的方法,从服务器获取对象列表。
//WebService通过传输byte[]将对象传到客户端.
byte[] bs = new WebServiceMethod().GetUserList();
//将byte[]还原为对象数据
IList list = (IList)ZipObject.DecompressionObject(bs);
//显示数据.
dataGridView1.DataSource = list;
}
{
//假设这里是调用WebService的方法,从服务器获取对象列表。
//WebService通过传输byte[]将对象传到客户端.
byte[] bs = new WebServiceMethod().GetUserList();
//将byte[]还原为对象数据
IList list = (IList)ZipObject.DecompressionObject(bs);
//显示数据.
dataGridView1.DataSource = list;
}
对象必须是可序列化对象,定义[Serializable]就行
/// <summary>
/// 定义对象为可序列化
/// </summary>
[Serializable]
public class User
{
private int _id;
private string _Name;
public int id { get { return _id; } set { _id = value; } }
public string Name { get { return _Name; } set { _Name = value; } }
public User(int id, string name)
{
_id = id;
_Name = name;
}
}
/// 定义对象为可序列化
/// </summary>
[Serializable]
public class User
{
private int _id;
private string _Name;
public int id { get { return _id; } set { _id = value; } }
public string Name { get { return _Name; } set { _Name = value; } }
public User(int id, string name)
{
_id = id;
_Name = name;
}
}
程序下载:
扫一扫加作者微信
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网