• ASP.NET CodeFile VS CodeBehind


    在ASP.NET开发环境中, 新建Asp.net项目。新生成的Aspx文件中,会自动生成如下代码。

     <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CodeBehind.aspx.cs" Inherits="WebApplication.WebForm" %>

    在一个现行的项目中,同样类型的Aspx文件,其形式如下:

     <%@ Page Language="C#" AutoEventWireup="true" CodeFile="CodeBehind.aspx.cs" Inherits="WebApplication.WebForm" %>

     这里便提出,CodeFile和CodeBehind的区别?

    结论是:

    1,CodeBehind属性,必须确保代码经过编译,代码运行时,对其CS文件进行编译不影响画面显示。

    2,CodeFile属性,经过编译的DLL可以删除不要,CS文件一旦修改,立刻反映到画面。

    (立刻反映,也需要画面重新加载,普通情况下F5刷新,或者后退再前进。) 

    3,CodeBehind属性的情况下,会重新加载一个新的designer.cs,当增加一个控件时,其designer.cs会自动生成。

    而CodeFile情况下,designer.cs不会自动生成。

    4,对Step3 进一步分析,不难发现1,2的区别。

    进一步说明,在Asp.net 2.0之前,不支持 CodeFile。 而最新的Asp.net则默认为CodeFile.

    如下所示 

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

     参照Link

     http://qiita.com/Booby/items/c092295379fe1dda6211#%E3%83%93%E3%83%AB%E3%83%89%E3%81%97%E3%81%A6%E3%81%A7%E3%81%8D%E3%81%9Fdll%E3%82%92ilspy%E3%81%A7%E9%80%86%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%AB%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B

     https://codezine.jp/article/detail/173

    Love it, and you live without it
  • 相关阅读:
    sequelize 批量添加和更新数据 bulkCreate
    js 线程和进程的关系
    mysql 索引 笔记1
    mysql 主键
    loj2292 「THUSC 2016」成绩单
    loj2291 「THUSC 2016」补退选
    cf984c Finite or not?
    cf984e Elevator
    loj2540 「PKUWC 2018」随机算法
    luoguT30204 偷上网
  • 原文地址:https://www.cnblogs.com/tomclock/p/7601896.html
Copyright © 2020-2023  润新知