CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

如何将委托存储在ViewState中

楼主bit01(卷土重来)2005-08-02 00:20:04 在 .NET技术 / ASP.NET 提问

我随便声明一个委托  
  [Serializable]  
  public   delegate   int   processSaveHead();  
  然后想这样存储在ViewState中  
  public   processSaveHead   SaveHead  
  {  
  get  
  {  
  if   (ViewState["SaveHead"]   ==   null)  
  {  
  processSaveHead   temp   =   new   processSaveHead(somenewmethiod);  
  ViewState["SaveHead"]   =   temp;  
  }  
  return   (processSaveHead)ViewState["SaveHead"];  
  }  
  set  
  {  
  ViewState["SaveHead"]   =   value;  
  }  
  }  
   
  但页面报错:must   be   marked   as   Serializable   or   have   a   TypeConverter   other   than   ReferenceConverter   to   be   put   in   viewstate。  
  请问如果将这个delegate存储到ViewState中,普通的实体类是可以这样存进去的。如果真能解我之惑,我还会加分! 问题点数:30、回复次数:5Top

1 楼saucer(思归)回复于 2005-08-02 00:39:46 得分 10

即使有了Serializable,并不表明系统知道怎么持久你的对象,因为delegate不是一个简单的对象,它类似function   pointer。  
   
  先问问你自己,你为什么要把这样的东西存在ViewState里?Top

2 楼zhilunchen(他山居士)回复于 2005-08-02 01:08:10 得分 10

估计用ViewState无法实现!为什么要保存委托啊?根据你的目的想其它办法吧!Top

3 楼bingbingcha(不思不归,不孟不E,原来是头大灰狼)回复于 2005-08-02 08:27:16 得分 10

为什么要保存委托呢??换个思路解决你的问题Top

4 楼bit01(卷土重来)回复于 2005-08-02 09:31:17 得分 0

谢谢楼上各位,确实可以不用,我想将一个委托传给一个自定义控件调用。  
  如果不放在ViewState中的话,每次点击自定义控件中的按钮时,委托就会丢掉。  
  我现在可以通过回发事件的方法解决,不过需要在使用自定义控件的页面加载这个事件。  
  如果能放在ViewState中时,委托就不会丢掉,页面就不需要加载任何事件,这样代码看起来也美观。  
  这就是我的主要意图,您们看这样可行吗?  
  Top

5 楼englam(peter)回复于 2005-08-30 17:05:11 得分 0

我试过把类放到ViewState中。关于委托。   没有试过。Top

相关问题

  • 如何注销委托?
  • 如何追加事件委托?
  • 如何清除viewstate?
  • 如何区别存储器
  • Access2000如何存储图片
  • 如何存储图像
  • Richedit内容如何存储?
  • 如何存储bmp图像?
  • 存储过程如何用??
  • 如何写存储过程

关键词

  • 委托
  • 自定义控件
  • 页面
  • viewstate
  • processsavehead
  • savehead
  • serializable
  • delegate
  • 事件

得分解答快速导航

  • 帖主:bit01
  • saucer
  • zhilunchen
  • bingbingcha

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo