[Serializable]DataSetBase:DataSet写入ViewState后不能读出来,为什么呀?请教思归孟子等高手

阿拉丁 2003-10-20 07:22:06
定义:
[Serializable]
public class DataSetBase : DataSet
{...}

应用
DataSetBase myDS = new DataSetBase();
//myDS赋值
ViewState["myds"] = myDS ; //没问题

myDS = (DataSetBase)ViewState["myds"]; //这句话出错
如果不加[Serializable],错误为:
The type 'Ammic.DataSetBase' must be marked as Serializable or have a TypeConverter other than ReferenceConverter to be put in viewstate.

如果加上[Serializable],错误为:
The View State is invalid for this page and might be corrupted.

如果将ViewState改成Session,,则运行正常没有错误。
请问:DataSet继承后能否继续使用ViewState?什么原因?怎么改?
...全文
119 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿拉丁 2003-11-01
  • 打赏
  • 举报
回复
3x, I'll try
513 2003-10-31
  • 打赏
  • 举报
回复
我无法看到你的DataSetBase类,你在其中实现借口ISerializable
时调用一下base.GetObjectData
具体在msdn中查一下GetObjectData(DataSet的GetObjectData)
阿拉丁 2003-10-24
  • 打赏
  • 举报
回复
再顶顶看
阿拉丁 2003-10-21
  • 打赏
  • 举报
回复
能否说的详细点,或者给些文档和链接
513 2003-10-20
  • 打赏
  • 举报
回复
关键是DataSetBase
如果序列化类的父类实现 ISerializable,对基类调用 GetObjectData 的实现。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧