zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    Completely disable mousewheel on a WinForm
    C# Form内存回收
    解锁用户
    CentOS7+JDK8编译Hadoop2.6.4
    网址收藏
    pvresize
    Linux crontab 命令格式与详细例子
    在CentOS 7中安装与配置JDK8
    Disable SELinux CentOS 7
    Python3标准库:math数学函数
  • 原文地址:https://www.cnblogs.com/tomclock/p/7601896.html
Copyright © 2011-2022 走看看