1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tổng quan về ASP.NET

145 614 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tổng quan về ASP.NET
Tác giả Vũ Song Tùng
Trường học University of Information Technology, Ho Chi Minh City
Chuyên ngành Computer Science
Thể loại Báo cáo
Thành phố Hồ Chí Minh
Định dạng
Số trang 145
Dung lượng 4,53 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tổng quan về ASP.NET

Trang 1

ASP NET

Vũ Song Tùng

Trang 4

Tổng quan về ASP NET

• ASP – Active Server Pages

• ASP NET – nền tảng phát triển ứng dụng web (web

application framework) được xây dựng bởi Microsoft

• Cho phép người lập trình tạo ra các trang web động, ứng

dụng web và dịch vụ web

• ASP NET được biên dịch dưới dạng Common Language

Runtime (CLR), cho phép viết bằng bất kz ngôn ngữ NET nào

• Mỗi Web Page (hay Web form) trong ASP NET được trình bày

bằng một file aspx

Trang 5

Tổng quan về ASP NET

<% @ Page Language ="C#" %> <! Page directive >

< html >< body >

< form id ="form1" runat ="server">

Nhập dữ liệu: <! Static text >

< asp : TextBox id ="txtName" runat ="server" /> <! Web control tag >

< input type ="button" value ="Gửi" /> <! Html control tag >

</ form >

</ body ></ html >

< script runat ="server"> <! Server-Side code >

void Page_Load( object sender, EventArgs e) {

txtName.Text = "Tổng quan" ;

}

</ script > <! Client-Side code >

Trang 6

Tổng quan về ASP NET

• Các thành phần Static Text, Html Control Tag, Client-Side

Code tương tự như trong các trang html

• Page Directives chỉ ra tập hợp các thuộc tính của page, dùng trong quá trình dịch page của server

• Web Control Tag tạo các control từ server, chỉ có trong

ASP.NET

• Server-Side Code – đoạn mã được chạy từ server

 Những thành phần do server xử l{ (server-side) đều có thuộc tính runat="server"

Trang 7

Tổng quan về ASP NET

• Server-Side Code có thể được viết riêng trong các file mã

nguồn như các ứng dụng Window form

• Tăng tính linh hoạt của ứng dụng, đặc biệt khi cần liên kết dữ liệu

• Có thể tận dụng tính kế thừa của OOP

• Dùng directive @Page để xác định file mã nguồn và tên lớp của Page

Trang 8

Tổng quan về ASP NET

Web server

Request Response

ASPX Engine

Instantiate, Process and Render

.html asp aspx xml

Compile and Generate Page Class (nếu cần)

Trang 9

Tổng quan về ASP NET

• Các bước xử l{ file

lập đối tượng Response

Trang 10

Tổng quan về ASP NET

• Các sự kiện của một Page

Trang 11

Tổng quan về ASP NET

• Ví dụ sự kiện Page_Load

<html><form id="Form1" runat="server">

<asp:Button runat="server" Text="Reload" />

</form></html>

<script runat="server">

Trang 12

Tổng quan về ASP NET

• Tạo project

– Mở Visual Studio NET 2010

– Chọn File\New\Project … (Ctrl+Shift+N)

– Trên cửa sổ “New Project”

1 Chọn Visual C#\Web trong “Installed Templates”

2 Chọn ASP NET Web Application trong danh mục template

3 Nhập tên của project vào ô “Name”

4 Nhấn “OK”

Trang 13

Tổng quan về ASP NET

1

2

3

Trang 14

Tổng quan về ASP NET

• Hệ thống file của project

Trang 15

Tổng quan về ASP NET

• Chạy ứng dụng

– Chọn Debug\Start Without Debugging (Ctrl + F5)

– Hoặc Debug\Start Debugging (F5) để chạy gỡ lỗi

• Đặt các điểm tạm dừng (BreakPoint)

• Theo dõi các đối tượng bằng các cửa sổ Watch

– Ứng dụng bắt đầu từ trang Default.aspx (nếu file hiện hành không phải là một file aspx hoặc aspx.cs nào khác)

– Thứ tự các hàm được gọi

• Global.Application_Start

• Global.Session_Start

• _Default.Page_Load

Trang 16

Tổng quan về ASP NET

Site.Master

< asp : Menu ID="NavigationMenu" >

< Items >

< asp : MenuItem NavigateUrl="~/Default.aspx"

Text="Home"/>

< asp : MenuItem NavigateUrl="~/About.aspx"

Text="About"/>

</ Items >

</ asp : Menu >

Trang 17

Tổng quan về ASP NET

• Sử dụng Solution Explorer

– Mở một file

– Thêm một thành phần vào project

– Xóa hoặc loại bỏ một thành phần ra khỏi project

– Di chuyển các file giữa các thư mục

 Chọn menu View\Solution Explorer (Ctrl + W, S) để kích hoạt Solution

Explorer

Trang 18

Tổng quan về ASP NET

• Thêm một thành phần vào project (từ menu Project hoặc

nhấn chuột phải vào một thư mục trong Solution Explorer)

– Web Form using Master Page

– Web User Control

– Master Page

– v v…

Trang 19

Tổng quan về ASP NET

• Thiết kế trang web bằng giao diện “Source”

Trang 20

Tổng quan về ASP NET

• Thiết kế trang web bằng giao diện “Design”

Trang 21

Tổng quan về ASP NET

• Tạo hàm xử l{ sự kiện nhấn “button1”

trong file aspx

– Chọn button1 trong giao diện “Design”

– Nháy đúp chuột trái vào sự kiện “Click”

trong danh sách sự kiện ở cửa sổ

Trang 22

Tổng quan về ASP NET

• Tạo hàm xử l{ sự kiện nhấn “button1” trong file aspx.cs

– Tạo hàm mới

– Hoặc ủy quyền

protected void Page_Load( object sender, EventArgs e) {

Trang 24

ASP NET namespaces

• Sự khoanh vùng các class khiến việc tìm kiếm và sử dụng

chúng trở nên dễ dàng

• Mỗi namespace miêu tả chính xác duy nhất một khái niệm

• Một namespace có thể bao gồm nhiều subnamespace

Trang 25

ASP NET namespaces

• Sử dụng namespace trong file aspx

• Sử dụng namespace trong mã nguồn

using System.Web.UI.WebControls;

using System.Data;

protected void Page_Load(object sender, EventArgs e)

<% @ Import Namespace ="System.Data" %>

Trang 26

ASP NET namespaces

• Định nghĩa các kiểu biến đơn

Single Số dấu phảy động Số dấu phảy động 4 byte (System.Single)

Double Số dấu phảy động Số dấu phảy động 8 byte (System.Double)

Decimal Số dấu phảy động Số dấu phảy động 12 byte (System.Decimal)

Trang 27

ASP NET namespaces

• Các subnamespace chính

Namespace Mô tả

Collections Chứa các container

Data Chứa các class làm việc với cơ sở dữ liệu

Web Chứa các class phục vụ cho việc xây dựng giao diện

Xml Chứa các class xử lý các file XML

Trang 28

ASP NET namespaces

• Các class chính

ArrayList Danh sách động của các đối tượng

SortedList Danh sách được sắp xếp theo giá trị các khóa

BitArray Mảng các giá trị true hoặc false

HashTable Bảng băm dùng cho các ứng dụng có tính chất từ điển

Queue Cấu trúc dữ liệu kiểu FIFO

Stack Cấu trúc dữ liệu kiểu LIFO

Trang 29

ASP NET namespaces

• Sử dụng ArrayList

protected void Page_Load(object sender, EventArgs e)

{

dataGrid1.DataSource = lst;

dataGrid1.DataBind();

Trang 30

ASP NET namespaces

Trang 31

ASP NET namespaces

< asp : DataGrid ID ="dataGrid1" runat ="server"

AutoGenerateColumns ="false" Width ="200px">

< HeaderStyle BackColor ="WhiteSmoke" Height = "25px"/>

< Columns >

< asp : BoundColumn DataField ="Name"

HeaderText ="Họ tên" />

Trang 32

ASP NET namespaces

• Chứa các class làm việc với cơ sở dữ liệu

IDbConnection Interface mô tả các phương thức kết nối cơ sở dữ liệu

IDbCommand Interface mô tả một câu lệnh SQL

IDataParameter Interface mô tả tham số của một Command

IDataReader Interface mô tả các thao tác đọc dữ liệu

IDataAdapter Interface mô tả các phương thức cập nhật dữ liệu

Trang 33

ASP NET namespaces

"select Name from Person", strConn);

dataAdapter.Fill(ds);

Trang 34

ASP NET namespaces

• Chứa các class hỗ trợ đọc/ghi tài liệu XML

XmlDocument Tài liệu XML

XmlReader Lớp trừu tượng mô tả các thao tác đọc file XML

XmlWriter Lớp trừu tượng mô tả các thao tác ghi file XML

Trang 35

ASP NET namespaces

Trang 36

ASP NET namespaces

dataGrid1.DataSource = lst;

dataGrid1.DataBind();

}

Trang 38

ASP Server Controls

• Định nghĩa trong System.Web.UI.HtmlControls

• Mặc định là các control phía client

System.Web.UI HtmlControls HtmlInputControls

HtmlInputButton HtmlInputCheckBox HtmlInputFile HtmlInputHidden HtmlInputImage HtmlInputRadioButton HtmlInputText

HtmlContainerControls

HtmlAnchor HtmlButton HtmlForm HtmlSelect HtmlTable HtmlTextArea HtmlGenericControl

HtmlImage

Trang 39

ASP Server Controls

• HtmlContainerControls

– Bao gồm nhiều đối tượng (VD HtmlButton có thể chứa HtmlImage) – Một vài control cơ bản

HtmlSelect DropdownList hoặc ComboBox <select>

HtmlTable Bảng gồm các hàng và các cột <table>

HtmlTextArea Ô nhập text gồm nhiều dòng <textarea>

Trang 40

ASP Server Controls

• HtmlContainerControls – HtmlAnchor

id ="ProgrammaticID" và gán link cho thuộc tính href

< a href ="URL"

target ="LinkedContentFrameOrWindow"

title ="TitleDisplayedByBrowser">Caption Of Link</ a >

< a href ="About.aspx" target ="_blank" title ="go to About">

About us

</ a >

Trang 41

ASP Server Controls

• HtmlContainerControls – HtmlSelect

size ="1" , HtmlSelect làm việc như một ComboBox, các giá trị lớn hơn 1 sẽ khiến nó làm việc như một ListBox

< select id ="ProgrammaticID" size ="NumberOfDisplayedItems"> < option >CaptionOfItem</ option >

</ select >

< select id ="Select1" size ="2">

Trang 42

ASP Server Controls

align="Alignment" | "center" | "right"

bgcolor="BackgroundColor" border="BorderWidthInPixels"

Trang 43

ASP Server Controls

Trang 44

ASP Server Controls

• HtmlInputControls

< input id ="ProgrammaticID"

type ="ControlType" />

ControlType Các thuộc tính riêng

Button, Reset, Submit Value – caption của Button

CheckBox, Radio Checked – trạng thái chọn

File

Text, Password, Hidden MaxLength – độ dài lớn nhất của xâu

Value – nội dung của TextBox

Trang 45

ASP Server Controls

• Định nghĩa trong System.Web.UI.WebControls

• Là các control phía server

System.Web.UI WebControls Basic Web Controls

Label, TextBox CheckBox, RadioButton Button, LinkButton, ImageButton HyperLink

Validation Controls RequiredFieldValidator RegularExpressionValidator CompareValidator RangeValidator CustomValidator ValidationSummary

Databound Controls

CheckedBoxList RadioButtonList DropDownList ListBox DataGrid DataList

Trang 46

ASP Server Controls

Trang 47

ASP Server Controls

• Sử dụng Basic Web Controls

< asp : Label runat ="server" Text ="Trả lời các câu hỏi sau"

Font-Bold ="true" Font-Size ="1.5em" />

< br />< br /> 1 Những control nào sau đây không thuộc nhóm Databound Controls?

< br />< asp : CheckBox runat ="server" ID ="checkBox1" Text ="ListBox" />

< br />< asp : CheckBox runat ="server" ID ="checkBox2" Text ="DropDownList" />

< br />< asp : CheckBox runat ="server" ID ="checkBox3" Text ="TextBox" />

< br />< asp : CheckBox runat ="server" ID ="checkBox4" Text ="CheckBox" />

< br />< br /> 2 Chọn thuộc tính để Page được load lại khi thay đổi trạng thái của RadioButton?

< br />< asp : RadioButton runat ="server" ID ="radioButton1" GroupName ="Question2" />

< br />< asp : RadioButton runat ="server" ID ="radioButton2" GroupName ="Question2" />

< br />< asp : RadioButton runat ="server" ID ="radioButton3" GroupName ="Question2" />

Trang 48

ASP Server Controls

• Sử dụng Basic Web Controls

protected void Page_Load( object sender, EventArgs e) {

if (textBox1.Text.ToUpper() == "TEXT" ) point++;

label1.Text = string Format( "Trả lời đúng {0}/3 câu hỏi" , point); };

}

Trang 49

ASP Server Controls

• Validation Controls

– Dùng để kiểm tra dữ liệu được nhập vào một control khác

RequiredFieldValidator Kiểm tra dữ liệu khác rỗng

RegularExpression Validator Kiểm tra dữ liệu theo mẫu cho trước

CompareValidator Kiểm tra tương quan giữa dữ liệu với giá trị cho

trước

CustomValidator Cho phép phát triển điều kiện cần kiểm tra

Trang 50

ASP Server Controls

Trang 51

ASP Server Controls

• Sử dụng Validation Controls

<asp:Label ID="Label1" runat="server" Text="Thông tin dự tuyển"

Font-Bold="true" Font-Size="1.5em" />

<table cellspacing="10px">

<tr><td align="right">Mã dự tuyển :</td>

<td><asp:TextBox ID="txtMaDuTuyen" runat="server" />

<asp:RegularExpressionValidator id="validTxtMaDuTuyen“ runat="server“

controlToValidate="txtMaDuTuyen"

errorMessage="Mã dự tuyển phải gồm 3 đến 5 chữ số“

display="static"

Trang 52

ASP Server Controls

• Sử dụng Validation Controls

<tr><td align="right">Họ và tên :</td>

<td><asp:TextBox ID="txtName" runat="server" />

<asp:RequiredFieldValidator id="validTxtName" runat="server"

controlToValidate="txtName"

errorMessage="Bắt buộc nhập họ tên" display="static">*

</asp:RequiredFieldValidator>

</td></tr>

<tr><td align="right">Tuổi :</td>

<td><asp:TextBox ID="txtTuoi" runat="server" />

<asp:RangeValidator id="validTxtTuoi" runat="server"

controlToValidate="txtTuoi"

errorMessage="Tuổi phải từ 18 đến 45" display="static"

type="Integer" minimumValue="18" maximumValue="45">*

</asp:RangeValidator>

</td></tr>

Trang 53

ASP Server Controls

• Sử dụng Validation Controls

<tr><td align="right">Trình độ :</td>

<td><asp:TextBox ID="txtTrinhDo" runat="server" />

<asp:CompareValidator id="validTxtTrinhDo" runat="server"

controlToValidate="txtTrinhDo"

errorMessage="Trình độ phải lớn hơn B" display="static"

type="String" Operator="GreaterThan" ValueToCompare="B">*

Trang 54

ASP Server Controls

Trang 55

ASP Server Controls

• Sử dụng CheckBoxList và RadioButtonList Controls

< asp : Label ID ="Label1" runat ="server" Text ="Trả lời các câu hỏi sau"

Font-Bold ="true" Font-Size ="1.5em" />

< br />< br /> 1 Những control nào sau đây không thuộc nhóm Databound Controls?

< br />< asp : CheckBoxList runat ="server" ID ="checkBoxList1">

< asp : ListItem Text ="ListBox" />

< asp : ListItem Text ="DropDownList" />

< asp : ListItem Text ="TextBox" Value ="1" />

< asp : ListItem Text ="CheckBox" Value ="1" />

</ asp : CheckBoxList >

< br /> 2 Chọn thuộc tính để Page được load lại khi thay đổi trạng thái của

Trang 56

ASP Server Controls

• Sử dụng CheckBoxList và RadioButtonList Controls

<br />3 Thuộc tính nào dùng để đặt caption cho Button?

<asp:TextBox runat="server" ID="textBox1" Width="50px" />

<hr /><asp:Button runat="server" ID="button1" Text="Trả lời" />

<br /><br /><asp:Label runat="server" ID="label2" Font-Bold="true" />

{

foreach (ListItem item in listControl.Items)

return 1;

}

Trang 57

ASP Server Controls

• Sử dụng CheckBoxList và RadioButtonList Controls

protected void Page_Load( object sender, EventArgs e)

{

if (!IsPostBack)

{

radioButtonList1.Items.Add( new ListItem( "runat=\"server\"" ));

radioButtonList1.Items.Add( new ListItem( "AutoPostBack=\"true\"" , "1" )); radioButtonList1.Items.Add( new ListItem( "AutoPostBack=\"false\"" ));

Ngày đăng: 28/03/2014, 01:00

TỪ KHÓA LIÊN QUAN