转:在ASP.NET中在不同页面间进行数据传递有哪些方法
搜的,网络很强大的
1. Get(即使用QueryString显式传递)
方式:在url后面跟参数。
特点:简单、方便。
缺点:字符串长度最长为255个字符;数据泄漏在url中。
适用数据:简单、少量、关键的数据。
适用范围:传递给自己、传递给另一个目标页面;常用于2个页面间传递数据。
用法:例如:url后加?UserID=…,跳转到目标页面,目标页面在伺服端可用Request.QueryString["InputText"]获取其指定参数值。
2. Post
方式:通用的方式。利用form提交。
特点:最常用的方法。常用技巧是把隐秘的数据存在隐藏域中由form提交。
适用数据:大量数据,包括文件上传。
适用范围:同Get方法
用法:在客户端form指定action目标后submit、在asp.net的伺服端中使用server.Transfer(url)提交;在伺服端中用Request.Form["FormFieldID"]获取。
3. 页面对象的属性
方式:asp.net特有方式 。利用HttpContext获取发请求的页面的信息。
特点:可以直接存储对象。
缺点:注意强制转换的类型要正确。
适用数据:各种数据。
适用范围:页面之间传递复杂数据。
用法:获取Context.Handler将其转换为发请求的页面的实例,随后就可以轻松访问其form中的字段、甚至属性。其中的Context是指HttpContext对象,Handler是其属性,Context.Handler的意思可以理解为创建源页类的实例变量,而得到此实例之后,就可以直接访问其中的属性和Public方法了。
4. cookie
方式:将数据存在客户端的经典方法。
缺点:安全性低、受客户端设置限制、一个站点仅存20个cookie,每个容量4096字节。
有效期:自定义或被用户清除
适用数据:用户的会话数据(一般是用户名,用户的个性化设置信息等)
适用范围:单个用户、整个站点所有页面
用法:引用Request
相关文档:
前面我们说过了 控制器(controller) 和方法(action)
本次要说的就是 View以及和控制器(controller)、方法(action)之间的关系;
大家都知道 MVC中的 V 就是View 的意思,就是 呈现给用户的界面,以往的asp.net项目中叫 webform,以前做asp.net的时候就是在工具箱里面拖控件出来,
然后简单的排版一下就ok了,大多数用的服 ......
1. aspx页面端代码:
<div class="gv-footer">
<asp:LinkButton ID="btFirstPage" runat="server" CommandArgument="first" OnClick ="PagerButton_Click">首页</asp:LinkButton>
<asp:Lin ......
Web页面是无状态的, 服务器对每一次请求都认为来自不同用户,因此,变量的状态在连续对同一页面的多次请求之间或在页面跳转时不会被保留。在用ASP.NET 设计开发一个Web系统时, 遇到一个重要的问题是如何保证数据在页面间进行正确、安全和高效地传送,Asp.net 提供了状态管理等多种技术来解决保存和传 ......
页面导出Excel时,常用的直接RenderControl的方法,如果表格中有数字,在Excel中往往格式会乱,比如前面有0,但显示出来后0都被去掉了。
因此要在绑定数字的时候,手动指定一下此列的格式,让数字以文本方式显示就行了
protected void myGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
......
在.net的世界里到底有什么呢?第一个是.net框架(.net Framework),现在最新的已经是4.0版本了,呵呵,但是我的netcms用的是2.0版本。第二个是.net集成开发环境,也就是我们平常看到的visual studio .net 2003 (2005 2008等)。是用来写程序和调试程序用的。当然,如果你够牛逼,你也可以用记事本 ......