@Page指令中的AutoEventWireup

@Page指令中的AutoEventWireup以前根本不注意AutoEventWireup这个小小的属性,但是后来由于它产生的许多麻烦使我不得不研究它,并最终领悟了它。如果你写了一个asp.net页面,里面包含了服务端脚本:voidPage_Load(objectsender,EventArgse){lblMessage.Text=”ThinkinginTechmango.com”;}

大家好,又见面了,我是你们的朋友全栈君。

以前根本不注意AutoEventWireup这个小小的属性,但是后来由于它产生的许多麻烦使我不得不研究它,并最终领悟了它。

如果你写了一个asp.net页面,里面包含了服务端脚本:

<@ Page language=c# AutoEventWireup=”false” Inherits=”Chapter3.ch21″ %>
<html>
<script language=c# runat=server>
void Page_Load(object sender, EventArgs e)
{

lblMessage.Text=”<a href=’http://techmango.com’>Thinking in Techmango.com</a>”;
}
</script>
<body>
<form runat=server>
<asp:label id=lblMessage runat=server />
</form>
</body>
</html>

运行后结果什么都不显示,怎么回事呢?!当然就是因为AutoEventWireup被设置成false了。AutoEventWireup是什么意思,对该代码有什么影响了。我查了一下msdn AutoEventWireup 指示页的事件是否自动连网。如果启用事件自动连网,则为 true;否则为 false
自动连网,这是什么意思,不明白,我又去google上搜了一下,查到了一个简单明白的回答:
如果 Page 指令的 AutoEventWireup 属性被设置为 true(或者如果缺少此属性,因为它默认为 true),该页框架将自动调用页事件,即 Page_Init 和 Page_Load 方法。在这种情况下,不需要任何显式的 Handles 子句或委托。

AutoEventWireup为true时,html中服务端脚本才被执行,结果才会出来在页面!

但是!反过来说,当AutoEventWireup为false时,却有它的好处,为什么? 当然就是因为我们常常用的后代码技术,如果当AutoEventWireup为true时,页面会执行两次,据我个人理解,.net环境会执行一次来运行html中包含的服务器端脚本,另外一次来执行后代码中的各个函数。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140422.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mac配置PHP环境(brew安装nginx+php)「建议收藏」

    第一步:检查本地有没有PHP:输入php-v命令,查看,如果有PHP版本,说明本地有PHP(MacOSX10.9以后的系统自带了PHP、php-fpm)我检查了一下,本地有,就不用安装了第二步:安装nginx直接输入brewinstallnginx然后回车就行,等待好一会儿,自动安装看到下面的提示,如图,说明安装成功,执行brewservicesstar…

    2022年4月16日
    34
  • mq推送数据_什么是消息队列

    mq推送数据_什么是消息队列2019独角兽企业重金招聘Python工程师标准>>>…

    2025年7月16日
    5
  • Activiti工作流使用之流程结构介绍[通俗易懂]

    Activiti工作流使用之流程结构介绍[通俗易懂]Activiti工作流使用之流程结构介绍文章目录Activiti工作流使用之流程结构介绍一、工作流介绍1.1概述1.2常见工作流二、工作流术语2.1工作流引2.2BPM2.3BPMN2.4流对象三、Activiti结构3.1Activiti系统服务结构图3.2Activiti数据库结构四、流程步骤4.1部署Activiti4.2流程定义4.3流程定义部署4.4启动一个流程实例4.5用户查询代办任务(Task)4.6用户已办任务历史记录4.6用户已办任务历史记录一、工作流介绍

    2022年9月27日
    3
  • 你的账户被停用,请向系统管理员咨询_win10退出管理员账户

    你的账户被停用,请向系统管理员咨询_win10退出管理员账户当你的电脑误操作了以下步骤,或者被篡改了设置了这里那恭喜你,重启后就登不上Administrator账户了首先看一下网上的两种无效方式无效方式一:带命令符的安全模式一般两种方式进入安全模式:方式一:F8进入方式二:按住shift重启cmd中输入netuseradministrator/active:yes亲测无效,依然登录不进去无效方式二:PE进入设置用户和组…

    2025年7月18日
    4
  • pycharm专业版 没有试用30天按钮,需要登录的解决方案「建议收藏」

    pycharm专业版 没有试用30天按钮,需要登录的解决方案「建议收藏」pychram在2021年9月30日之后的版本,需要用户登录后才能开启试用;以此来抵制盗版(虽然没有什么用…)新版本是长这样:没有了之前的Evaluateforfree选项;进入的解决方案:注册一个JetBrains帐户;注册地址:https://account.jetbrains.com/login?_ga=2.268514929.1239888694.1637728385-1574465557.1637728385填写邮箱地址后,在邮箱中进行下一步操作;邮箱发送可能有

    2025年6月23日
    3
  • L2-004这是二叉搜索树吗(二叉搜索树)

    L2-004这是二叉搜索树吗(二叉搜索树)原题链接一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点,其左子树中所有结点的键值小于该结点的键值;其右子树中所有结点的键值大于等于该结点的键值;其左右子树都是二叉搜索树。所谓二叉搜索树的“镜像”,即将所有结点的左右子树对换位置后所得到的树。给定一个整数键值序列,现请你编写程序,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果。输入格式:输入的第一行给出正整数 N(≤1000)。随后一行给出 N 个整数键值,其间以空格分隔。输出格式:如果输入序列是对一棵二叉搜索树或

    2022年8月9日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号