AutoEventWireup="false"导致Page_Load事件未执行
来源:互联网 发布:恶作剧屏幕软件大全 编辑:程序博客网 时间:2024/05/29 13:10
以前根本不注意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是什么意思,对该代码有什么影响了。我查了一下msdnAutoEventWireup 指示页的事件是否自动连网。如果启用事件自动连网,则为 true;否则为false。
自动连网,这是什么意思,不明白,我又去google上搜了一下,查到了一个简单明白的回答:
如果 Page 指令的 AutoEventWireup 属性被设置为 true(或者如果缺少此属性,因为它默认为 true),该页框架将自动调用页事件,即 Page_Init 和 Page_Load 方法。在这种情况下,不需要任何显式的 Handles 子句或委托。
当AutoEventWireup为true时,html中服务端脚本才被执行,结果才会出来在页面!
但是!反过来说,当AutoEventWireup为false时,却有它的好处,为什么? 当然就是因为我们常常用的后代码技术,如果当AutoEventWireup为true时,页面会执行两次,据我个人理解,.net环境会执行一次来运行html中包含的服务器端脚本,另外一次来执行后代码中的各个函数。
- AutoEventWireup="false"导致Page_Load事件未执行
- AutoEventWireup="false"导致Page_Load事件未执行
- AutoEventWireup属性与Page_Load事件
- AutoEventWireup="false" 意思理解
- ASP.NET 中的AutoEventWireup="false"
- .NET页面不执行page_load事件解决方案
- 详细AutoEventWireup <@ Page language=c# AutoEventWireup="false"和“True”>的研究
- Page_Load 事件
- Page_Load事件
- Page_load事件
- Page_load事件
- 当前无法命中断点,不能执行Page_Load事件,等若干问题...
- 母板页中的事件Page_Load居然不执行
- .net不跑后台的Page_Load()方法??为什么呢?AutoEventWireup
- <%@ Page language="c#" Codebehind="Main.aspx.cs" AutoEventWireup="false" Inherits="Vod.WebForm1" %>
- Page_Load不执行
- 页面加载事件Page_Load
- .NET中Page_Load事件
- 网络游戏服务器设计
- 在线程中调用多媒体定时器,当定时器超时时,出现内存错误!
- 硬链接和软链接
- 八数码(BFS)
- SQL2005合理的索引设计
- AutoEventWireup="false"导致Page_Load事件未执行
- JAVA温习:wait和sleep的区别
- Amazon AWS 各大区到天朝的网络延迟
- JAVA温习:java类装载机制
- 二维数组的动态分配及参数传递
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- Oracle RAC相关服务无法启动问题
- Android的listview滚动时背景不让变黑解决办法
- Oracle RAC服务器完全启动