电脑维护
首页 软件学院 硬件学院 电脑系统 电脑教程 编程语言 网络应用 安全相关 IT黄页
电脑主板 | CPU | 硬盘 | 内存 | 显卡 | 声卡 | 网卡 | 光驱 | 键盘 | 鼠标 | 电脑电源 | 电脑机箱 | 显示器 | 打印机 | 扫描仪 | 摄像头 | 其他
快速搜索:

ASP.NET存储状态的一个问题及解决-ASP语言

作者:电脑维护 来源:电脑知识网  日期: 2008-3-28
  通常,ASP.NET存储会话状态有三种方式——InProc、StateServer和SQLServer。一般最常用的是第一种,在这种情况下,可以用类似这样的语法来存储会话状态:Session["key"] = val。其中val可以使任何类型的对象。  

  但如果使用StateServer或SQLServer,则要求val的类型必须是一个可序列化类型,因为ASP.NET应用在于状态服务器之间交换数据时,需要对对象进行序列化。如果val不可序列化(有私有域/属性并且没有指定自定义序列化特性),则会在运行时出现如下异常:  

  “/”应用程序中的服务器错误。

  --------------------------------------------------------------------------------

  无法序列化会话状态。在“StateServer”或“SQLServer”模式下,ASP.NET 将序列化会话状态对象,因此不允许使用无法序列化的对象或 MarshalByRef 对象。如果自定义会话状态存储在“Custom”模式下执行了类似的序列化,则适用同样的限制。   

  解决方法有这样几种:  

  1 尽量使用基本类型的对象来存放数据  

  2 自定义类型只使用公有域/属性  

  3 为自定义类型实现序列化特性  

  ……  

  几种方法优劣暂不作说明。我偷懒用了第一种。

  
热门推荐教你几招判断系统是否被流氓侵犯多窗口浏览器Opera 9.0新版怒放


文章页数:[1] 
【相关文章】
  • 济南龙达通讯
  • 济南世纪天创
  • 济南力拓禹达
  • 济南力拓禹达
  • 济南莉涛科技
  • 山东联事达
  •  发布评论

    网上大名:
     评论内容
    ·还没有相关的评论!
     友情链接:宠物网址大全 | 瑜珈网址大全 | 中国安防黄页 | 瑜珈音乐下载 | 搞笑短信 | 经典广告词 | 瑜伽视频下载
    版权所有:电脑知识网·电脑维护 
    Copyright 2000-2010 13ml.com.cn All Rights Reserved
    注:网站所有资料为网上搜集或网友提供,如侵犯了你的版权,请来信告之, 我们将及时为你处理。谢谢!