zoukankan      html  css  js  c++  java
  • ASP.NET代码后置机理

    一.内联代码与代码隐藏

    代码隐藏模型相对内联代码的优势: 

    1.逻辑代码和html的分离,使得我们可以更专注于业务逻辑的处理。

    2.使业务逻辑更加清晰。

    3.可以将后置代码编译成dll,使得程序更加安全。 

    二.后置代码与页面的关系和机制

    与代码后置模型相关的三个类。 

    1.基页面类 page类

    .net类库中的page类,page类定义了页面的基本功能。例如:允许存放其他控件、呈现html、提供对asp.net对象的访问(如request、response、session等)。 

    2.代码后置类

    在编译的时候,asp.net利用了分部类的神奇功能把一些额外的代码附加到代码后置类中。

    在附加的这部分代码中,把页面上所有控件定义成protected类型的变量,从而使得可以在代码后置类中能够访问这些控件。 

    3.页面类 

    asp.net编译器在编译的时候会创建另一个类代表实际的aspx页面,这个类继承自代码隐藏类。

    这个类中包含了初始化控件和呈现html的代码。当接受到这个页面请求时,asp.net实例化这个类。

    这三各类的关系如下图: 

    三.代码隐藏文件与页面的连接
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    代码隐藏文件与页面的连接非常简单,在aspx页面顶端的这样一句话就完成了他们之间的连接。

    codeFile指定了后置代码的文件,Inherits指定了已经编译的后置代码的类名。 

    四.控件与页面变量的连接 

    了解后置代码类和页面类的关系以后,控件如何和页面变量连接的理解就简单多了。

    比如:


     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

    asp.net编译器都会附件如下的变量声明到你的代码后置类中,当然这些声明是不可见的:


    protected System.Web.UI.TextBox TextBox1;

    这样就能够在后置代码类中访问页面控件标签了。

    五.事件与事件处理程序的连接

    .net当中事件机制是一种非常重要的机制,这一部分放到后面慢慢弄清楚。

  • 相关阅读:
    python3笔记二十二:正则表达式之函数
    python3笔记二十一:时间操作datetime和calendar
    python3笔记二十:时间操作time
    python3笔记十七:python文件读写
    Spring常用注解
    Pytorch实现卷积神经网络CNN
    Keras实现autoencoder
    Keras实现LSTM
    TensorFlow实现CNN
    Recurrent Neural Networks vs LSTM
  • 原文地址:https://www.cnblogs.com/shiguangshuo/p/4857249.html
Copyright © 2011-2022 走看看