aspx和aspx.cs中基本文件結構(繼承關系)


用VS創建的網站每個aspx文件都對應一個cs文件,而cs文件里的類一般和文件同名,如果遇見關鍵字的情況才會自動使類名前加個'_',例如:_Default.創建的這個cs文件繼承自System.Web.UI.Page類,而且只能\必須繼承該類.原因就是aspx文件是繼承cs文件的.

<@page 中 Codebehind 、Inherits 和aspx的關系


我們在編web程序時,通常要要處理:UI(用戶界面,也就是數據的顯示)與代碼(如何處理數據的Code(代碼)。為了達到UI與Code的完全分開,我們把UI當作一個對象,Code當作另我一個對象。當然我們要研究這兩個對象的關系,還記得我們在編ASP程序時把同一段代碼Copy到很多頁面,看來code是父類了,UI是子類了。不過他們都是從 System.Web.UI.Page繼承過來。理清了類的關系,我們不難理解代碼UI與Code分開的思想了。

關系圖:

引入名稱空間:using System.Web.UI

父類 page→ 很多子類Code(*.cs文件)→很多子子類 UI(*.aspx文件)

 

因為我主要是想大家了解這種編程思想,所以我只舉一個簡單的例子,我想大家有了思想,再就是多找實例來看了。

 

文件兩個:

UI類: default.aspx 主要用來顯示數據,用DataGrid控件

Code類: default.aspx.cs 主要用來建立數據聯接、查詢、綁定數據於DataGrid控件的

        里面我創建了自己的namespace名叫vagrant,以及類MyVagrant

數據庫: data,里面有一個關系表student

 

為了說明default.aspx類是從default.aspx.cs 繼承過來的,需要在default.aspx申明:

<%@ Page language="c#" Codebehind="default.aspx.cs" Inherits="vagrant.MyVagrant" %>

Codebehind表明父類的源文件,Inherits="vagrant.MyVagrant" 表明該文件是從哪個類繼承下來的。

 

現在給出源文件

default.aspx代碼:

 

<%@ Page language="c#" Codebehind="default.aspx.cs" Inherits="vagrant.MyVagrant" %>

<HTML>

<HEAD>

</HEAD>

<body>

<form id="Form1" method="post" runat="server">

<asp:datagrid id="MyDataGrid" runat="server"

style="Z-INDEX: 101; LEFT: 197px; POSITION: absolute; TOP: 48px"

BorderStyle="Ridge" GridLines="None" BorderWidth="2px" BorderColor="White"

BackColor="White" CellPadding="3" CellSpacing="1" Width="494px" Height="143px">

<HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="#E7E7FF" VerticalAlign="Middle" BackColor="4A3C8C" />

<ItemStyle HorizontalAlign="Center" ForeColor="Black" VerticalAlign="Middle" BackColor="#DEDFDE" />

</asp:datagrid>

</form>

</body>

</HTML>

 

default.aspx.cs 文件代碼 注意:需要編譯

/*

功能說明:default.aspx.cs用來將UI與源代碼分開,此為代碼部分,需要編譯

Created By vagrant

*/

 

//引入必須的名稱空間

using System;

using System.Data;

using System.Data.SqlClient; //引入使用SQL數據庫所必須的名稱空間

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

 

namespace vagrant //創建自己的名稱空間

{

 

public class MyVagrant :Page //我的類MyVagrant是從類System.Web.UI.Page類繼承過來的

{

protected DataGrid MyDataGrid;

 

 

private void Page_Load(object sender, System.EventArgs e)//頁面裝載初始化,可檢查頁面是不是第一次被處理

{

 

// 第一步:建立數據庫聯接,用面向對象的觀點就是創建一個SQL數據庫聯接對象的實例,並初始化

SqlConnection MyConnection=new SqlConnection("Server=(local);DataBase=data;UID=sa;PWD=;");

 

//第二步:讀取數據庫,來面向對象的觀點就是創建一個查詢對象的實例,並初始化

SqlDataAdapter MyCommand=new SqlDataAdapter("select * from student",MyConnection);

 

//:第三步:存儲數據 

DataSet ds=new DataSet();

MyCommand.Fill (ds,"vagrant");

// 第四步:綁定數據

MyDataGrid.DataSource =ds.Tables ["vagrant"].DefaultView

MyDataGrid.DataBind ();

}

}

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM