1.关于WebForm环境下启用了autopostback的问题,注意,启用了autopostback的服务器控件要在修改值后按enter或tab或鼠标点击才会触发Page_Load,这一步会造成误解,如果是一个启用了autopostback的服务器控件+一个button,可能会出现点击两次button才触发button事件的感觉,但实际上第一次点击是触发autopostback的控件事件重新提交触发了Page_Load及其自身事件的原因。
这种交互体验不好。
使用一般的判断+viewstate处理了此问题
2.关于return
return仅出现于函数体中,执行return语句会中断跳出整个大函数体,而不在乎return是否在函数体中的小函数体中。
3、关于WebForm下的生命周期
浏览器提出请求-Page_Init事件触发,渲染页面框架-Page_load事件触发(不管页面是第一次被请求还是作为回发部分请求,都会触发)-验证控件Validate方法-立即反应事件_doPostBack()方法-呈现-清除
以DataInput程序comprehensive为例
第一次请求aspx:Page_Load-!isPostBack,而当使用激活了autoPostback的控件时,则为Page_Load,此时不执行!isPostBack,表示他已是回发重要的point:
凡涉及请求,都会再度执行Page_Load函数(WebForm臃肿的原因之一),而一般!isPostBack放在里面,只有那些第一次通过URL连接访问页面的才会执行
,因此,!isPostBack中的内容多为第一次加载页面时需要初始化提供的数据或其他比如验证,而且仅需要执行一次就可以
        protected void Page_Load(object sender, EventArgs e){Context.Response.Cache.SetCacheability(HttpCacheability.NoCache);string msg = new AntiSqlAttack(Request).CheckSqlAttach();//防止sql注入攻击if (!msg.Equals("N")){LTSysAttackInfo.WriteAttackInfo(Request.ServerVariables["REMOTE_ADDR"], Request.ServerVariables["URL"].ToLower(), Request.ServerVariables["Remote_Host"], StringProcess.StrCutFrom(msg, BasicType.AttMesString));Response.Write(StringProcess.StrPreCut(msg, BasicType.AttMesString));return;}if (!IsPostBack){//1.!IsPostBack等价于IsPostBack=false,表示页面form第一次加载,即没有发生过GET/POST请求后的页面,此时应当对登录的用户进行核对并初始化一些东西//2.当form表单post提交时就不是第一次回传,此时不用再核对登录用户if (CheckUser(Convert.ToString(Session["oaid"]))){Initialize();}elseResponse.Redirect(ConfigOwn.LoginPage);}}

WebForm生命周期相关推荐

  1. Asp.Net WebForm生命周期的详解

    一.http://Asp.Net页面生命周期的概念 当我们在浏览器地址栏中输入网址,回车查看页面时,这时会向服务器端IIS)发送一个request请求,服务器就会判断发送过来的请求页面,当完全识别 T ...

  2. ASP.Net请求处理机制初步探索之旅 - Part 4 WebForm页面生命周期

    开篇:上一篇我们了解了所谓的请求处理管道,在众多的事件中微软开放了19个重要的事件给我们,我们可以注入一些自定义的业务逻辑实现应用的个性化设计.本篇,我们来看看WebForm模式下的页面生命周期. ( ...

  3. (转)教你记住ASP.NET WebForm页面的生命周期

    对于ASP.NET Webform的开发者,理解ASP.NET Webform的页面生命周期是非常重要的.主要是为了搞明白在哪里放置特定的方法和在何时设置各种页面属性.但是记忆和理解页面生命周期里提供 ...

  4. WebForm页面生命周期及asp.net运行机制

    转载至:https://www.cnblogs.com/liangxiaofeng/p/5620033.html 1.先上几张原理图着重理解: 现在针对第四副图原理进行解析: 流程: 1.浏览器发送请 ...

  5. vue 监控元素宽度_Vue入门系列之Vue实例详解与生命周期

    Vue的实例是Vue框架的入口,其实也就是前端的ViewModel,它包含了页面中的业务逻辑处理.数据模型等,当然它也有自己的一系列的生命周期的事件钩子,辅助我们进行对整个Vue实例生成.编译.挂着. ...

  6. .net组件开发系列之武术系列 武术招数 控件生命周期与控件事件机制

    .net组件开发系列之武术系列 武术招数 控件生命周期与控件事件机制一.控件生命周期 先回述上篇,可能表述没有不清晰,也可能跨度大了点,好的,我们来一个循序渐进过程,大家都知道,武术都有招术的,先出什 ...

  7. ZT Web Control 开发系列(一) 页面的生命周期

    http://www.cnblogs.com/joeliu/category/143125.html Page是WebForm编程基本元素,它从TemplateControl派生,而TemplateC ...

  8. 05Vue.js快速入门-Vue实例详解与生命周期

    Vue的实例是Vue框架的入口,其实也就是前端的ViewModel,它包含了页面中的业务逻辑处理.数据模型等,当然它也有自己的一系列的生命周期的事件钩子,辅助我们进行对整个Vue实例生成.编译.挂着. ...

  9. Vue实例详解与生命周期

    Vue实例详解与生命周期 http://www.jianshu.com/p/b5858f1e6e76 Vue的实例是Vue框架的入口,其实也就是前端的ViewModel,它包含了页面中的业务逻辑处理. ...

最新文章

  1. JavaBean组件的基本使用-语法
  2. 查单个值用什么resultset_视光门诊日记—为什么两个医院查的视力不一样
  3. (14)Why some people find exercise harder than others
  4. Promise和setTimeout执行顺序 面试题
  5. ext2.2打造全新功能grid系列--仅仅动态生成GridPanel
  6. 航空航天大事件c语言程序设计,2017年沈阳航空航天大学航空航天工程学部823C语言程序设计考研强化模拟题...
  7. 2020-11-18(失败的一天)
  8. android自定义view生命周期,android基础之自定义view
  9. java弹出虚拟键盘_JS实现电脑虚拟键盘的操作
  10. 【飞秋教程】文件断点续传
  11. 分布式 java 应用:基础与实践_单集群数据超1000亿,微服务架构下分布式数据库应用实践...
  12. centos7 下修改网络配置
  13. 跨境电商独立站是什么意思?
  14. java 时间戳 重复_在Java中创建一个唯一的时间戳
  15. 计算机考试电子档照片,电子版照片是啥意思???
  16. SWOT分析法 (SWOT Analysis)
  17. UG应用标准库遇到 当前搜索选项查文件失败,部件已卸载
  18. 17python实操案例五
  19. Linux常用命令之scp
  20. 巧推网站seo优化推动网站快速排名

热门文章

  1. 红米10X和荣耀Play4TPro参数对比-拍照哪个好?
  2. uni-app打包ios的步骤
  3. 设备管理不停刷新,usb不停刷新
  4. 老公有了外遇,各地妻子的反应
  5. 计算机 管理 防火墙设置在哪里,电脑防火墙在哪里设置
  6. iphone怎么变android,苹果变安卓系统是什么 苹果怎么变安卓系统
  7. QVector/std::vector使用笔记
  8. English-培训1-Phonetic symbols
  9. 有没什么便签App可以用闹钟提醒该做什么
  10. mac上怎么卸载office应用程序