热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

深入解析ASP.NET中ViewState、Cookie和Session的区别与应用

本文深入探讨了ASP.NET中ViewState、Cookie和Session三种状态管理技术的区别与应用场景。ViewState主要用于保存页面控件的状态信息,确保在多次往返服务器过程中数据的一致性;Cookie则存储在客户端,适用于保存少量用户偏好设置等非敏感信息;而Session则在服务器端存储数据,适合处理需要跨页面保持的数据。文章详细分析了这三种技术的工作原理及其优缺点,并提供了实际应用中的最佳实践建议。


























































类型

值保存在哪

值的有效范围

备注

View State

客户端

不能跨页面传递,只能在当前页面保存数据。

HTML中可以看到ViewState值,不过是加密。不是明文。

ViewState是保存页面数据的默认方法。

客户端将页面submit给服务器是,ViewState中就保存着各个控件的数据、和页面的其他数据。

经过设置,可以禁用ViewState

Control State

客户端

同ViewState

View State区别:Viewstate可以经过设置禁用。假如你自定义一个控件,如果将值保存在ViewState的话,在禁用Viewstate时,服务器可能无法获取控件数据,这时候你需要将控件数据保存在Control
State
中。

Hidden Fields

客户端

 

同ViewState

Hidden Fields就是保存数据,但是浏览器不会将它呈现和渲染。但是可以从HTML源码中直接看到对应的值,而且还是明文的,用户当然也就可以修改Hidden
Fields
值。

COOKIE

客户端

可以跨页面

保存在客户端的文本文件中,或者是内存中。

可以指定COOKIE的有效期。

Query Strings

客户端

同 ViewState

Query Strings很简单理解,它就保存在URL中的字段。

Session State

服务器

一次Session有效,可以跨页面。

最典型的应用:保存登录账户信息。

Applicant State

服务器

Websites运行阶段

IIS或者Websites重启后Applicant State级无效。

Profile Properties

服务器

 

可以永久保存

ASP.NET可以通过 Profiles Properties保存指定用户的信息,通过SqlProfileProvider可以将数据保存到SQL
DB
中,也就是说你可以将Profile Properties永久保存。


参考:http://msdn.microsoft.com/en-us/library/75x4ha6s.ASPX

博主地址:blog.csdn.net/zhang_hui_cs

ASP.NET 的 ViewState COOKIE Session 等的比较,布布扣,bubuko.com


推荐阅读
  • 尽管PHP是一种强大且灵活的Web开发语言,但开发者在使用过程中常会陷入一些典型的陷阱。本文旨在列出PHP开发中最为常见的10种错误,并提供相应的预防建议。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • 如何高效创建和使用字体图标
    在Web和移动开发中,为什么选择字体图标?主要原因是其卓越的性能,可以显著减少HTTP请求并优化页面加载速度。本文详细介绍了从设计到应用的字体图标制作流程,并提供了专业建议。 ... [详细]
  • 本文详细介绍了如何通过命令行启动MySQL服务,包括打开命令提示符窗口、进入MySQL的bin目录、输入正确的连接命令以及注意事项。文中还提供了更多相关命令的资源链接。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 本文详细介绍了 phpMyAdmin 的安装与配置方法,适用于多个版本的 phpMyAdmin。通过本教程,您将掌握从下载到部署的完整流程,并了解如何根据不同的环境进行必要的配置调整。 ... [详细]
  • 配置PHPStudy环境并使用DVWA进行Web安全测试
    本文详细介绍了如何在PHPStudy环境下配置DVWA( Damn Vulnerable Web Application ),并利用该平台进行SQL注入和XSS攻击的练习。通过此过程,读者可以熟悉常见的Web漏洞及其利用方法。 ... [详细]
  • 本文将详细介绍通过CAS(Central Authentication Service)实现单点登录的原理和步骤。CAS由耶鲁大学开发,旨在为多应用系统提供统一的身份认证服务。文中不仅涵盖了CAS的基本架构,还提供了具体的配置实例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • JMeter接口关联与数据提取:正则表达式和JSON Extractor的使用
    在使用JMeter进行接口测试时,常常需要从前一个接口的响应中提取数据并应用于后续请求。本文将详细介绍如何利用正则表达式提取器(Regular Expression Extractor)和JSON Extractor来实现这一需求。 ... [详细]
  • 本文详细探讨了在微服务架构中,使用Feign进行远程调用时出现的请求头丢失问题,并提供了具体的解决方案。重点讨论了单线程和异步调用两种场景下的处理方法。 ... [详细]
  • 本文探讨了如何通过WebBrowser控件在用户点击输入框时自动显示图片验证码。该过程可能涉及JavaScript事件的触发与响应。 ... [详细]
  • Spring Security核心概念与应用实践
    本文详细介绍了Spring Security的核心机制,包括其作为一系列过滤器的工作原理,如何实现用户认证与授权,以及常见的配置方法和高级特性如CSRF防护。 ... [详细]
  • 探讨了在使用客户端JavaScript时,确保其完整性和来源可靠性的方法,特别是在安全性要求较高的应用中。 ... [详细]
  • 本文介绍了Java Web应用中的资源重定向和请求转发机制,包括默认欢迎资源文件的设置方法,以及多个Servlet之间的调用规则和数据共享方案。 ... [详细]
  • 随着技术的发展,黑客开始利用AI技术在暗网中创建用户的‘数字孪生’,这一现象引起了安全专家的高度关注。 ... [详细]
author-avatar
Martha829
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有