zoukankan      html  css  js  c++  java
  • ASP.NET中页面传值的几种方式

    1.  使用QueryString变量

    QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。例子:

    a.aspx的C#代码

    2.  使用Application 对象变量

    Application对象的作用范围是整个全局,也就是说对所有用户都有效,服务器运行不停止的话,Application永远都存在。其常用的方法用Lock和UnLock。

    a.aspx的C#代码

    3.  使用Session变量

    想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,易于实现,并且提供较高的安全性和持久性,可以应对IIS 重启和辅助进程重启,可在多进程中使用所以,过量的存储会导致服务器内存资源的耗尽。

    a.aspx的C#代码

    4.  使用Cookie对象变量

    这个也是大家常使用的方法,与Session一样,其是什对每一个用户而言的,但是有个本质的区别,即Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合ASP.NET内置对象Request来使用。

    a.aspx的C#代码

    5.  使用Server.Transfer方法

    这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效。

    a.aspx的C#代码

    6 利用隐藏域
    在页面中加入一个隐藏控件, 与服务器进行交互时把值赋给隐藏控件并提交给下一页面。使用隐藏域存入数值时用:hidden 控件.value=“***”,取出接收数值时用:变量=hidden 控件.value。使用隐藏域的优点是实现简单, 隐藏域是标准的HTML 控件,不需要复杂的编程逻辑。隐藏域在页上存储和读取,不需要任何服务器资源,几乎所有浏览器和客户端设备都支持具有隐藏域的窗体。缺点是仅仅支持简单的数据结构,存储量少。 
    7 ViewState
    ViewState 是由ASP.NET 页面框架管理的一个隐藏的窗体字段。当ASP.NET 执行某个页面时,该页面上的ViewState 值和所有控件将被收集并格式化成一个编码字符串, 然后被分配给隐藏窗体字段的值属性。使用ViewState 传递数据时可用:ViewState [" 变量名"]=数值,在取出数据时用:变量=ViewState["变量名"]。使用ViewState 的优点是:在对同一页的多个请求间自动保留值,不用服务器端资源,实现简单,视图状态中的值经过哈希计算和压缩,并且针对Unicode 实现进行编码,其安全性要高于使用隐藏域;缺点是因为ViewState 存储在页面本身,因此如果存储较大的值,用户显示页和发送页时的速度可能会减慢。虽然视图状态以哈希格式存储数据,但它仍可以被篡改。

    8使用cache

    cache使用方法和session差不多。

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    Leetcode#129 Sum Root to Leaf Numbers
    Leetcode#15 3Sum
    Leetcode#16 3Sum Closest
    Leetcode#127 Word Ladder
    Leetcode#2 Add Two Numbers
    Leetcode#18 4Sum
    vue.js入门(3)——组件通信
    vue.js慢速入门(2)
    vue 基础介绍
    vue.js中v-for的使用及索引获取
  • 原文地址:https://www.cnblogs.com/befer/p/4943516.html
Copyright © 2011-2022 走看看