BÀI 3 : XÂY DỰNG WEB ĐỘNG
2. Các đối tượng ASP.Net:
2.3. Biến và các cấu trúc điều khiển:
.NET Framework cung cấp nhiều ngôn ngữ lập trình khác nhau, mỗi một ngôn ngữ có cách khai báo biến và cấu trúc điều khiển khác nhau. Trong giáo trình này ta sử dụng Visual Basic.NET để minh họa.
2.3.1. Khai báo biến
Ta thực hiện khai báo biến theo cú pháp sau:
Dim <Tên biến> AS <Kiểu dữ liệu>
Trong trang ASP.NET, theo mặc định biến phải được khai báo trước khi được sử dụng. Ta có thể không khai báo biến mà vẫn sử dụng chúng trong trang ASP.NET bằng cách gán giá trị false (mặc định là true) cho Page Explicit theo cú pháp sau: <%@ Page Explicit=False%>
Các kiểu biến được cho trong bảng sau:
CLR (Common Language
Runtime) Type Visual Basic Type C# Type
Boolean Boolean bool
Byte Byte byte
Char Char char
DateTime Date DateTime
Decimal Decimal decimal
Double Double double
Int32 Integer int
Int64 Long long
Object Object Object
SByte SByte sbyte
Int16 Short short
Single Single float
String String string
UInt32 UInteger uint
UInt64 ULong ulong
Để chuyển đổi kiểu dữ liệu ta sử dụng:
- Hàm Ctype theo có pháp sau: CType(expression, typename)
Trong đó expression là biểu thức cần chuyển đổi sang kiểu typename. - Sử dụng phương thức Parse của hầu hết các kiểu dữ liệu:
Dim Age As Integer
Age = Integer.Parse(AgeTextBox.Text)
- Trong trường hợp chuyển đổi sang kiểu chuỗi ta sử dụng theo phương thức ToString() theo cú pháp sau:
Dim instance As AppDomain Dim returnValue As String
returnValue = instance.ToString
2.3.2. Các cấu trúc điều khiển a) Cấu trúc rẽ nhánh If…Then
Ta sử dụng cấu trúc If …Then theo một trong các cú pháp sau:
- If condition Then [statement]
-If condition Then [statements] End If -If condition Then [statements]
[ElseIf elseifcondition Then
[elseIfStatements]] [Else [elseStatements]]
End If
Trong đó:
+ condition: Là biểu thức điều kiện, trả về giá trị True hoặc False.
+ statement: Là một câu lệnh được thực hiện khi biểu thức điều kiện condition nhận giá trị True.
+ statements: Là một câu lệnh, hoặc nhiều câu lệnh được thực hiện khi biểu thức điều kiện condition nhận giá trị True.
+ elseifcondition: Tương tự như condition.
+ elseifstatements: Là một câu lệnh được thực hiện khi biểu thức điều kiện elseifcondition nhận giá trị True.
+ elsestatements: Là các câu lệnh được thực hiện khi tất cả các biểu thức điều kiện là false.
Chú ý: Ta có thể sử dụng khối các câu lệnh if lồng nhau. Ví dụ. Sử dụng cấu trúc rẽ nhánh If…Then
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object,ByVal e As System.EventArgs) Dim x, y, a As Integer x = 25 y = 5 If x < y Then a = y - x Else a = x - y End If
Response.Write("Trị tuyệt đối của x-y: " & a) End Sub
</script>
b) Cấu trúc rẽ nhánh Select Case…
Select [ Case ] testexpression
[ Case expressionlist
[ statements ] ] [ Case Else [ elsestatements ] ]
End Select Trong đó:
+ testexpression: Là biểu thức giá trị có thể liệt kê được, giá trị thuộc một trong các loại dữ liệu sau: Boolean, Byte, Char, Date, Double, Decimal, Integer, Long, Object, Short, Single, String.
+ expressionlist: Là danh sách các giá trị mà testexpression có thể nhận, có thể là hằng hoặc biểu thức, chúng cách nhau dấu. Biểu thức trong Case có nhận một trong các dạng sau:
expression1 To expression2
[ Is ] comparisonoperator expression
Từ khóa To để chỉ một khoảng giá trị, Is dùng để so sánh. Ví dụ như: Case 1 To 4,5,6,7 To 9,11,13, Is > MaxNumber
+ statements: Một hay nhiều câu lệnh trong Case.
+ elsestatements: Một hay nhiều câu lệnh trong Case Else.
c) Cấu trúc lặp Do …Loop
Lặp lại một khối câu lệnh trong khi biểu thức điều kiện là True hoặc cho đến khi điều kiện đạt giá trị True. Ta sử dụng cú pháp sau:
Do { While | Until } condition
[ statements ] [ Exit Do ] [ statements ] Loop hoặc Do [ statements ] [ Exit Do ] [ statements ]
Loop { While | Until } condition
Trong đó:
+ While : được khai báo trừ khi Until được sử dụng. Lặp cho đến khi
condition là False.
+ Until: được khai báo trừ khi While được sử dụng. Lặp cho đến khi
condition là True.
+ condition : Là biểu thức Boolean.
+ statements : Là một câu lệnh hoặc khối câu lệnh lặp lại.
+ Exit Do: Là câu lệnh thoát khỏi vòng lặp Do loop.
d) Cấu trúc While … End While
Cấu trúc này lặp một khối câu lệnh trong khi điều kiện là True, theo cú pháp sau. While condition [ statements ] [ Exit While ] [ Statements ] End While
Trong đó:
+ condition : Là biểu thức Boolean.
+ statements : Là một câu lệnh hoặc khối câu lệnh lặp lại.
+ Exit While: Dùng để thoát khỏi vòng lặp.
Ví dụ : Sử dụng cấu trúc While… End While
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object,ByVal e As System.EventArgs) Dim counter As Integer = 0
While counter < 10 counter += 1
Response.Write(counter.ToString & "<BR>") End While
End Sub </script>
e) Cấu trúc With … End With
Cấu trúc With … End With được dùng thực hiện với một chuỗi câu lệnh cùng tham chiếu đến một đối tượng hoặc cấu trúc. Sử dụng theo cú pháp sau: With object
[ statements ] End With
Ví dụ: Sử dụng cấu trúc With… End With
<%@ Page Language="VB" %> <script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
With Me.lblLabel
.Text = "Cấu trúc With ...End With" .ForeColor = Drawing.Color.Blue .BorderColor = Drawing.Color.Violet .BackColor = Drawing.Color.BlueViolet End With End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title> </head>
<body>
<div>
<asp:Label ID="lblLabel" runat="server" Text="My lable"
BorderColor="Violet"></asp:Label></div> </form>
</body> </html>
f) Cấu trúc lặp For Each …Next
Cấu trúc lặp For Each …Next dùng để lặp các câu lệnh đối với mỗi phần tử element trong một tập hợp group. Chúng được sử dụng theo cú pháp sau: For Each element [ As datatype ] In group
[ statements ] [ Exit For ] [ statements ]
Next [ element ] Trong đó:
+ element : là biến dùng để duyệt các phần tử trong một tập hợp.
+ datatype : Kiểu của element và phải được khai báo nếu chưa khai báo trước đó, kiểu của nó cùng kiểu với các phần tử của tập hợp.
+ group : Chỉ một tập hợp các phần tử mà các câu lệnh lặp trên đó. + statements : Một hoặc nhiều câu lệnh.
+ Exit For : Dùng để thoát khỏi vòng lặp For Each
g) Cấu trúc lặp For …Next
Đây là cấu trúc lặp chỉ định được số lần lặp, được sử dụng theo cú pháp sau đây:
For counter [ As datatype ] = start To end
[ Step step ] [ statements ] [ Exit For ]
[ statements ] Next [ counter ] Trong đó:
+ counter: Đây là biến đếm điều khiển quá trình lặp.
+ start :Giá trị khởi tạo cho biến count
+ end: Giá trị kết thúc của biến counter.
+ step: Bước nhảy của biến, mặc định là 1
+ statements: Các câu lệnh thực hiện trong vòng lặp. + Exit For: Dùng để thoát khỏi vòng lặp
2.3.3. Các toán tử
a) Các phép toán số học
Ngoài các phép toán số học cơ bản như:
+ (cộng) : variable=expression1 + expression2
- (trừ) : variable=expression1 - expression2
* (nhân) : variable=expression1*expression2
/ (chia) : variable=expression1 / expression2
^ (lũy thừa) : variable=expression1 ^ expression2
\ (chia lấy module) : variable=expression1 \ expression2
Mod (chia lấy phần dư): variable=expression1 Mod expression2
Visual Basic.Net còn cung cấp một số phép toán đặc biệt sau:
+= (cộng bằng) : variable+=expression tương đương với biểu thức variable= variable + expression
-= (trừ bằng) : variable -=expression tương đương với biểu thức variable= variable - expression
*= (nhân bằng) : variable *=expression tương đương với biểu thức variable= variable * expression
/ =(chia bằng) : variable *=expression tương đương với biểu thức variable= variable/expression
^=(lũy thừa bằng) : variable ^=expression tương đương với biểu thức variable= variable ^ expression
\ =(chia lấy phần nguyên bằng) : variable \=expression
b) Các phép toán so sánh
Các phép toán so sánh trả về giá trị kiểu Boolean.
- Các phép toán so sánh số học: =, <>, >, >=, <, <=
- So sánh xâu ký tự: Like (resul =string Like pattern), và các phép toán so sánh =, <>, >, >=, <, <= dùng để so khớp từng xâu ký tự giữa hai biểu thức so sánh.
- So sánh các đối tượng: Is (result = object1 Is object2),
IsNot (result = object1 IsNot object2)
- So sánh kiểu đối tượng: TypeOf <objectexpression> Is <typename>
c) Các phép toán logic
Là các phép toán giữa các biểu thức boolean: Not, And, Or, Xor
d) Phép toán ghép chuỗi
Là các phép dùng để ghép hai chuỗi ký tự với nhau: &, +