Code-behind

From Wikipedia, the free encyclopedia

In ASP.NET, code-behind files are files that contain the actual programmatic logic. In ASP.NET, the logic and presentation are separated using code-behind files. The presentation is in the .aspx or .ascx files.

In the traditional ASP style of development, the coding logic has to be necessarily embedded into the HTML. This made writing code and maintaining it extremely difficult. All the code is written in a single .asp file intermixed with the markup code, and this is sometimes referred to as "spaghetti code".

In ASP.Net two files are created in place of the single .asp file.

  • .aspx - This file contains the HTML markup, the server-side controls and the Javascript. Thus it is pure data representation.
  • .aspx.cs or .aspx.vb - This contains the actual logic for data control. This makes debugging and maintenance easier. The file is suffixed by a .cs (C#) or .vb (Visual Basic) depending on the language used to program.

Hence a code-behind is exactly what it is, a code behind the actual page.

[edit] Sample code

<%@ Page Language="vb" Codebehind="sampleCodeBehind.aspx.vb" %>

The above tag is incorporated into the HTML (.aspx). The Codebehind property of the @ Page directive specifies the file (.cs or .vb) that will act as the code-behind. i.e. Suppose this @ Page directive is included in a samplePage.aspx, then sampleCodeBehind.aspx.vb will act as the code-behind for this page.

[edit] See also