序列化业务对象
2006-04-13 15:14
344 查看
呼~终于把分页控件做好了。满心欢喜打算把它用在以前的一个系统中。
该系统是基于Castle的ar开发的。
由于我的分页控件需要将表现控件的DataSource往ViewState里存,而我写的domain对象竟然不能序列化,提示错误如下:
类型“***”必须标记为 Serializable 或者具有 ReferenceConverter 以外的TypeConverter,才能被放置在视图状态中。
到网上找了些文章看了一下,自己再试验改进之后,在业务对象中作如下处理就成功解决问题了:
1.加上namespace:
using System.Runtime.Serialization;
2.在类名前加上[Serializable]
3.让类继承ISerializable
4.给类加上构造函数:
protected Users(SerializationInfo info,StreamingContext context)
{
Id = info.GetString("Id");
Name = info.GetString("Name");
CreateDate = info.GetDateTime("CreateDate");
}
5.实现ISerializable:
public void GetObjectData(System.Runtime.Serialization.SerializationInfo info,
System.Runtime.Serialization.StreamingContext context)
{
info.AddValue("Id",Id);
info.AddValue("Name",Name);
info.AddValue("CreateDate",CreateDate);
}
这些Id,Name,CreateDate是什么?是Users类的属性啊。
OK,成功解决问题。
该系统是基于Castle的ar开发的。
由于我的分页控件需要将表现控件的DataSource往ViewState里存,而我写的domain对象竟然不能序列化,提示错误如下:
类型“***”必须标记为 Serializable 或者具有 ReferenceConverter 以外的TypeConverter,才能被放置在视图状态中。
到网上找了些文章看了一下,自己再试验改进之后,在业务对象中作如下处理就成功解决问题了:
1.加上namespace:
using System.Runtime.Serialization;
2.在类名前加上[Serializable]
3.让类继承ISerializable
4.给类加上构造函数:
protected Users(SerializationInfo info,StreamingContext context)
{
Id = info.GetString("Id");
Name = info.GetString("Name");
CreateDate = info.GetDateTime("CreateDate");
}
5.实现ISerializable:
public void GetObjectData(System.Runtime.Serialization.SerializationInfo info,
System.Runtime.Serialization.StreamingContext context)
{
info.AddValue("Id",Id);
info.AddValue("Name",Name);
info.AddValue("CreateDate",CreateDate);
}
这些Id,Name,CreateDate是什么?是Users类的属性啊。
OK,成功解决问题。
相关文章推荐
- 业务实体对象(Business Entity Object)的序列化
- 业务实体对象(Business Entity Object)的序列化
- 将一个业务实体对象序列化并保存到站点的指定目录下
- 业务实体对象(Business Entity Object)的序列化
- 业务实体对象(Business Entity Object)的序列化
- Android—序列化对象—Parcelable
- 24-IO流-56-IO流(ObjectInputStream-对象的反序列化)
- Java基础学习总结——Java对象的序列化和反序列化
- 对象序列化----transient关键字的作用
- C#之序列化对象(二进制方式序列化对象)
- jquery 将form中的元素序列化成对象;序列化对象填充到指定input
- iOS数据存取和对象序列化
- 面向Java开发人员的Ajax:Java对象序列化
- Protostuff 序列化/反序列化集合等对象
- java对象的序列化和反序列化
- PHP 对象的存储与传输(序列化 serialize 对象)
- 《Java编程思想》学习笔记15——对象序列化
- 将对象序列化成为一个byte数组
- vc++上的MFC的对象序列化和反序列化
- [导入]BlogEngine.Net架构与源代码分析系列part2:业务对象——共同的父类BusinessBase