为什么了解Asp.net生命周期对于在Asp.net中编码很重要?

为什么了解Asp.net生命周期对于在Asp.net中编码很重要?,asp.net,Asp.net,为什么了解Asp.net生命周期对在Asp.net中编码很重要?因为否则,您将最终对代码做出错误的假设 在不了解平台工作原理的情况下开发平台从来都不是一个好主意 至少,所有ASP.Net开发人员都必须了解客户端代码(Javascript)和服务器端代码(C#)之间的区别,以及回发模型的工作原理。 了解ViewState和session也是一个好主意。至少您应该知道,具有页面生命周期的ASPX会带来很多开销,并在适当的时候选择一些更简单的东西,例如Http处理程序(ashx)。首先,了解任何东西的

为什么了解Asp.net生命周期对在Asp.net中编码很重要?

因为否则,您将最终对代码做出错误的假设

在不了解平台工作原理的情况下开发平台从来都不是一个好主意

至少,所有ASP.Net开发人员都必须了解客户端代码(Javascript)和服务器端代码(C#)之间的区别,以及回发模型的工作原理。

了解ViewState和session也是一个好主意。

至少您应该知道,具有页面生命周期的ASPX会带来很多开销,并在适当的时候选择一些更简单的东西,例如Http处理程序(ashx)。

首先,了解任何东西的工作原理都应该是能够在其中正确编码的先决条件,否则,这只是猜测和好运。ASP.NET生命周期是ASP.NET工作方式的核心部分,必要的知识也是如此

如果你不知道,什么样的事情会出问题

一些例子:

  • 如果不了解事件的顺序,则可能会在控件从ViewState还原之前读取它们的属性
  • 如果太晚(例如,在预渲染时间之后),您可能会尝试写入输出
  • 您可能会很早就将属性写入,结果会被其他内容覆盖
  • 在创建子控件之前尝试执行操作可能会遇到问题
还有更多。简言之,这很重要,这就是为什么你需要知道它。

原因完全相同,知道页码如何工作对于阅读一本书非常重要

很多时候,你可以在不了解页面生命周期的情况下过得很好,但是,如果你不了解页面生命周期,你就会时不时地遇到一些无法解释的事情——这种情况会随着你获得的信息越高级而发生


此外,这并不难(你不需要知道它,只需要理解它),掌握好页面生命周期的工作原理会让你更好地理解ASP.Net的工作原理,这反过来会使使用ASP.Net变得更加容易。

生命周期和视图状态是ASP.Net最重要的两个方面。在不了解生命周期的情况下,您将在viewstate、动态控件、事件等方面遇到许多问题。知道这一点会为你节省大量的时间

了解asp.net生命周期意味着知道什么、何时何地:触发事件时要做什么以及将在何处应用它

你不仅需要知道“节省很多时间”的原因,还需要知道建立一个具有良好实践的网站的原因


快乐编码

ASP.NET试图通过完全无状态的协议HTTP为您提供状态。理解页面生命周期是非常重要的,因为如果您不理解生命周期,那么您将几乎不必要地调试一堆代码

例如,如果您使用动态控件,并将其添加到页面加载中,则事件可能不会触发。如果在Page_init中初始化代码,相同的控件和事件将正常工作

所以,你可以清楚地看到,只要知道用什么事件来做什么事情。。。你可以避免陷入不必要的学习循环。看看这个


因为ASP.NET使用复杂的对象模型,所以了解它很重要,因为:

  • 您可以进行故障排除或学习如何利用viewstate
  • 最好了解用户控件或自定义控件(因为它们也有相同的生命周期减去一些页面生命周期事件)。用户控件可以在此生命周期中与页面交互
  • 调试由于组件更改其值而导致的状态问题很有帮助(以前是值X,现在是值Y,在回发生命周期中,它是以这种方式从服务器返回的,还是在加载期间更改的?)
  • 您可以学习如何构建自定义组件以利用生命周期,并减少总体编码工作量(使用模块或自定义页面类等)

HTH.

我的前两个asp.net应用程序是在对生命周期了解最少的情况下编写的,但它们只是小应用程序(一个简单的照片库和一个映射应用程序)


一旦你开始在商业环境中创造任何有用的东西,您需要更多地使用该框架,并且需要查看一些生命周期图,以了解不可避免地会收到的一些错误消息。

Visual Studio为您生成页面加载处理程序是有原因的-即使在页面生命周期中,您也可以仅使用该处理程序来创建一个功能完善的网站


了解生命周期(以及在需要时如何查找引用)非常重要,因为最终您将在页面加载中执行一些不起作用的操作。您可能会遇到的第一件事是控制事件发生在页面加载之后,并且您希望在这些控制事件之后执行一些操作。因此,您将加载好的ol,然后看到页面加载完成,因此您甚至可以处理它,一切都会再次正常工作。

如果您是ASP.NET新手,那么您最好跳过ASP.NET WebForms,使用ASP.NET MVC,这在生命周期方面更为简单,并鼓励更好的编程实践。我正在研究这一点,但我知道我想了解,因为面试时会问我一些问题。我想我理解生命周期,但我想更好地理解为什么它如此重要。我见过SILVERU记忆方法。S-Start I-Initialize L-Load V-Validate E-Event Handling R-Render U-Unload我的问题是,您是否理解客户端和服务器端。如果将不同的周期等同于代码,我需要担心的是什么。Default.aspx,后面带有代码D