牛腩新闻发布系统—Page.IsPostBack属性
发布日期:2021-06-29 11:15:53 浏览次数:2 分类:技术文章

本文共 1344 字,大约阅读时间需要 4 分钟。

前言

  在学习牛腩老师的牛腩新闻发布系统的时候,老师多次用到了这个属性,之前一直对这个属性不理解,不明白这个属性的作用。最近查了一下,终于弄明白了。其实这只是一个很基础很基础的问题,但是因为我初次接触 B/S,所以对 B/S 的东西一点儿都不理解。下面就介绍一下这个属性。

什么是 Page.IsPostBack属性

  该属性是用来判断页面是否是回传的。如果页面是初次加载,那么这个属性就返回false;如果页面是回传的,那么这个属性就返回true。

什么是回传

  要想明白这个属性的意思,就必须明白什么是回传。回传:即用户通过点击ASP.NET的Web网页上的Button、LinkButton或ImageButton等控件时,表单被发送到服务器上的过程就叫做回传。

  如果某些控件的AutoPostBack属性被设置为true,那么当该控件的状态被改变后,也会使表单发送回服务器 (AutoPostBack属性,它只有两个bool值,true或者false。如果这个属性被设置成false,那么点击后就不会立刻将变化传给服务器处理)。
  简而言之,当表单提交回服务器时就是回传。在地址栏中输入网址或者刷新等,页面就是初次加载。

B/S的执行顺序

  除了知道什么是回传之外,还要知道 B/S 的页面处理顺序。当页面第一次加载的时候,毋庸置疑,Page_Load事件必须要执行,因为要初始化页面,加载控件。但是当我们提交表单的时候,即回传的时候,Page_Load事件会再次执行,也就是说页面会再次初始化。因为浏览器会将整个页面提交给服务器进行处理,服务器处理完毕,再把处理完成的页面返回给浏览器。

为什么要用这个属性

  用好这个属性是很重要的,如果用了这个属性,会加快浏览器的执行效率,也就会加快用户的浏览速度。比如:你要从当前一个界面跳转到另一个界面,而且当前界面还绑定了大量的数据,如果我们不用这个属性做一个判断的话,跳转时还要重新再绑定一次数据。可是我们并不需要这个界面了,而绑定数据这项工作就太多余了,而且还会占用一定时间。所以如果我们这个属性判断一下当前是否是回传时,就可以不用做绑定数据这项多余的工作了。

  下面举一个如何使用的例子:

protected void Page_Load(object sender, EventArgs e){    //如果是第一次进入页面时,则绑定数据;如果是回传时,则不执行下面的代码块    if (!Page.IsPostBack)    {                    //显示最新5条新闻        NewsManager newsManager = new NewsManager();        gvNewNews.DataSource = newsManager.SelectLatestFiveNews();        gvNewNews.DataBind();        //显示热点新闻        gvHotNews.DataSource = newsManager.SelectHotNews();        gvHotNews.DataBind();    }}

转载地址:https://blog.csdn.net/zwj_jyzl/article/details/86412129 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:牛腩新闻发布系统—真假分页
下一篇:牛腩新闻发布系统—instead of 触发器

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月06日 17时40分57秒