.aspx文件与.aspx.cs文件的关系(转载)

aspx和对应的.aspx.cs是一个页面一个代码,页面基本上只负责显示格式之类的,

    而所有的服务器端动作都是在aspx.cs中定义的。也就是说他们其实是一个东西的两面,

    aspx中所有服务器端控件都可以在对应的aspx.cs中使用,反之亦然,当然也可以定义对应的动作,

    如果是在IDE中开发的话,不需要你进行任何额外的工作。

    而在编译之后,aspx.cs变成了bin目录下的dll,而aspx文件没什么变化,

    发布的时候只需要把aspx和dll带上就可以了,cs文件作为原代码不需要发布出去.

 

ASPX是前台,表示设计页面,ASPX.CS是后台,是代码功能实现,分开来设计是为了代码清晰,功能模块化,

这是Code-Behind结构,即代码在页面HTML的后面。   

    

  在.aspx文件中,主要是页面的HTML;   

  而在.aspx.cs文件中,是C#代码,在.aspx中添加的控件的事件,它的代码都在.aspx.cs中。      

  打一个不恰当的比喻:   

  .aspx页面的内容就像我们平时编的静态网页(.htm,.html)–当然不是完全一样。   

  .aspx.cs中的内容,就非常像我们开发windows平台下的软件一样(例如delphi,VC等)–当然也不是完全一样。

而深入其中的研究貌似我还是有点似懂非懂..但是还是贴上吧:

aspx.cs文件中存放有一个类(例如WebForm1),在你向服务器请求该页面时,ASP.NET就会将aspx.cs中的类作为基类,

把当前的页面(aspx文件)及基类,编译生成一个新的类(例如了B),

然后由B类产生对象在服务器端生成HTML文件发送给客户端,所以说这里是继承关系,

大家可以在aspx文件的开头看到如下语言也足可以说明这一点:

<%@   Page   language=”c#”   Codebehind=”WebForm1.aspx.cs”   AutoEventWireup=”false”   Inherits=”WebApplication1.WebForm1″   %>

其中的Inherits=”WebApplication1.WebForm1″就说明了这种继承关系.

深入研究详细参见http://www.cnblogs.com/axzxs2001/archive/2009/01/19/1378383.html

    原文作者:果冻咔咔
    原文地址: https://blog.csdn.net/weixin_41188227/article/details/81033760
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞