如何在视图状态中保存自定义的对象
2004-08-25 17:41
423 查看
背景:
B/S三层结构系统,在表现层实例化业务层的对象,并使用此对象执行业务规则,访问数据层。
问题:
在表现实例化一个业务对象,在操作此对象时发现它不能被加入到ViewState中,提示错误:
类型“AmmeterChg”必须标记为 Serializable 或者具有 ReferenceConverter 以外的TypeConverter,才能被放置在视图状态中。
解决方案:
通过将类实现 ISerialization 接口,使它可被序列化
实现接口部分的代码如下:
#region ISerializable 成员
protected ammeterChg(SerializationInfo info,StreamingContext context)
{
this.customer_id = info.GetString("customer_id");
this.am_id_old = info.GetString("am_id_old");
this.abc =info.GetString("abc");
this.ycbds_old = info.GetDouble("ycbds_old");
}
public void GetObjectData(System.Runtime.Serialization.SerializationInfo info,
System.Runtime.Serialization.StreamingContext context)
{
info.AddValue("customer_id",customer_id);
info.AddValue("am_id_old",am_id_old);
info.AddValue("abc",abc);
info.AddValue("ycbds_old",ycbds_old);
}
#endregion
===========================================================
customer_id,am_id_old,ycbds_old 是该类的属性的 private 变量!
B/S三层结构系统,在表现层实例化业务层的对象,并使用此对象执行业务规则,访问数据层。
问题:
在表现实例化一个业务对象,在操作此对象时发现它不能被加入到ViewState中,提示错误:
类型“AmmeterChg”必须标记为 Serializable 或者具有 ReferenceConverter 以外的TypeConverter,才能被放置在视图状态中。
解决方案:
通过将类实现 ISerialization 接口,使它可被序列化
实现接口部分的代码如下:
#region ISerializable 成员
protected ammeterChg(SerializationInfo info,StreamingContext context)
{
this.customer_id = info.GetString("customer_id");
this.am_id_old = info.GetString("am_id_old");
this.abc =info.GetString("abc");
this.ycbds_old = info.GetDouble("ycbds_old");
}
public void GetObjectData(System.Runtime.Serialization.SerializationInfo info,
System.Runtime.Serialization.StreamingContext context)
{
info.AddValue("customer_id",customer_id);
info.AddValue("am_id_old",am_id_old);
info.AddValue("abc",abc);
info.AddValue("ycbds_old",ycbds_old);
}
#endregion
===========================================================
customer_id,am_id_old,ycbds_old 是该类的属性的 private 变量!
相关文章推荐
- 页面跳转,如何保存之前的页面信息,即保存视图状态
- 在view中如何保存自定义view的状态
- [导入]上传文件时如何保存视图状态?
- Android 自定义组件及组件如何保存/恢复状态
- Android 如何保存与恢复自定义View的状态?
- [翻译]如何使用LINQ方法来比较自定义类型的对象
- Hibernate 查询多个字段返回的list如何转为自定义对象
- [经验]自定义ASP.NET服务器控件属性的状态不能保存的问题
- 数据库创建视图时如何指定自定义列的类型
- activity状态保存的bundl对象存放位置的思考
- 如何禁止App在后台运行以及如何保存和恢复App的状态
- java 对象序列化实现复杂UI对象状态的保存。
- 如何动态加载web control在postback后记住视图状态(viewstate)
- 自定义对象如何进行拷贝
- 如何将一个UIView对象的内容保存为UIImage
- [置顶] HashSet保存自定义不重复对象
- [置顶] HashSet保存自定义不重复对象
- 保存Java程序状态及设置之对象序列…
- Fragment详解之六——如何监听fragment中的回退事件与怎样保存fragment状态
- 如何动态保存不同类的对象的成员函数的地址?--解决