codebehind 是不是代码分管的意思?  我用的vs.net2003,这个软件最大的特点不是前台跟代码分离吗?  那么codebehind 又是什么?它有什么用,具体怎么去实现?我用的是C#+ASP.NET+SQL。小弟在线等。在此先谢过!~~

解决方案 »

  1.   

    当在Visual Studio .NET中创建一个Web页(经常称之为form,即表单)时,这页实际上包括两个文件,.aspx文件包含有HTML代码,而.vb或者.cs文件则包含该页中部分可执行代码(常常称之为codebehind)。Page分别通过Codebehind和Inherits属性指示.aspx文件指向codebehind文件以及文件中的类。
    ASP.NET(外加VS.NET)提供的codebehind模型提供的分隔,允许通过强制模块控制(model-view-controller type)类型结构来增加可维护性。你也可以在VS.NET外通过使用Page指令的src属性来执行codebehind。
     然后,开发者就可以在VS.NET中建立项目了,ASP.NET在运行时产生与.aspx页耦合的codebehind部件(DLL),它用来创建运行时的Page类(Page类在处理对页的请求时实际运行)。
        Codebehind文件包含一个从Page类继承来得、位于System.Web.UI名字空间的类--这一点常常被开发者忽视。这个类(它最终继承自一个名为Control的类)提供所有的事件、方法和属性,ASP.NET使用这些事件、方法和属性来在运行时向浏览器提供页面,如图A所示。注意,Codebehind类(本例中是Form1)继承自Page类。下面给出了一个用VB写的简单例子,里面有.aspx页和codebehind文件。
    <%@ Page Language="vb" Codebehind=“Form1.aspx.vb" Inherits=“MyProj.Form1"%>
    <HTML>
      <body>
        <form id="Form1" method="post" runat="server">
           <asp:Button id="btnHello" runat="server" Text="Hello Atomic World!“ />
        </form>
      </body>
    </HTML>
    Form1.aspx.vb
    Public Class Form1
      Inherits System.Web.UI.Page  Protected WithEvents btnHello As System.Web.UI.WebControls.Button  Private Sub Page_Load(ByVal sender As System.Object, _
          ByVal e As System.EventArgs) Handles MyBase.Load
          ’Put user code to initialize the page here
      End Sub  Private Sub btnHello_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles btnHello.Click
         btnHello.Text = "Welcome to .NET"
      End Sub
    End Class
      

  2.   

    Codebehind   在 Visual Studio 中,此属性引用包含页类的文件的名称,是Visual Studio 所特有的属性。
      

  3.   

    前台页面:aspx
    后台代码:cs
      

  4.   

    asp.net本来就是codebehind的啊。
    楼上都说了 前台页面:aspx  后台代码:cs
      

  5.   

    自从Microsoft公司推出了ASP.NET以后,Code Behind就成了大家议论的热门话题了. 
      Code Behind,就是所谓的代码分离,它可以使你的程序显得更加有条理、可读性更强! 
      在Asp横行的那个时代里,程序员和美工的合作总是显得不那么融洽,稍微的页面改动就会使得我们大动干戈.曾经,我也尝试过在Asp中实现代码分离,比如在服务端事先处理好各项事务,然后用JavaScript将数据接收下来,最后再调用.功能虽然实现了,但是花费却更大了,有点儿东施效颦的感觉. 
      现在有了Asp.Net,问题解决了! 
      通过一个简单的实例,了解一下Code Behind. 
      先建立一个 test.aspx 的页面: <%@ Page Language="c#" Inherits="jeky" Src="test.aspx.cs" %> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
    <HTML> 
    <HEAD> 
    <TITLE> Code Behind 实例 </TITLE> 
    <META NAME="Generator" CONTENT="EditPlus"> 
    <META NAME="Author" CONTENT="jeky.cn"> 
    <META NAME="Keywords" CONTENT="jeky,asp.net,Code Behind"> 
    <META NAME="Description" CONTENT="Code Behind,2004-10-8"> 
    </HEAD> <BODY> 
    <Form runat="Server"> 
    <br>姓名: 
    <asp:TextBox id="tb" runat="server"/> 
    <asp:Button id="bt" Text="提交" OnClick="bt_Click" runat="server"/> 
    </Form> 
    </BODY> 
    </HTML>   页面打开后,显示效果如下图所示:      可以看到,该页代码最上方有这么一句: 
      <%@ Page Language="c#" Inherits="jeky" Src="test.aspx.cs" %> 
      其中 Language="c#" 表示该页运行时使用的是哪种语言编译器, Inherits 属性表示aspx页派生于jeky类,Src属性则指明jeky类所属的文件路径.   要实现Code Behind功能,需要用二个文件来创建.一个是设计页(如*.aspx),一个是代码页(如*.cs/*.vb).下面来看代码页(test.aspx.cs):      程序前三行都有using关键字,它的作用类似于VB中的With,在这里是为了指明对象所处的名称空间.例如,Page类所属的名称空间是System.Web.UI,而TextBox控件则包含在名称空间System.Web.UI.WebControls中.事先用using来指明所属的名称空间后,可以减少代码的输入,还可以使程序看起来简洁明了.   紧接着,声明一个名叫"jeky"的类,该类继承了Page类的所有属性和方法. 
      protected 是声明程序中所用到的对象. 
      void bt_Click 是一个"事件处理程序",须用"public"关键词以便能在"设计页"中调用.   该程序最终运行效果会出现一个对话框,其中的内容即文本框中所输入的内容.   上面只是一个小实例,也许你还体会不出Code Behind的优势所在,如同在Asp中用Dim声明变量一样.不过,我建议大家在平时都应该养成一个良好的习惯,做人是这样,写程充亦也如此. 
    ====================================================================================我自己在网上找的,大家可以讨论一下。
      

  6.   

    CodeBehind就是代码后置的意思,使客户端代码与服务器代码相分离!
    .aspx是客户端的后缀名,.cs是服务器端代码。
      

  7.   

    当你用VS.NET平台的时候就是实现了呀
    你不会想是分层吧?
      

  8.   

    前台展示代码写在.aspx文件中,后台代码和时间处理写在.aspx.cs中,vs2003中你双击空白处,就可以进入.aspx.cs中编辑.