Bài 07: Ứng dụng ASP.NET
» Giới thiệu về ASP.NET
» Mô hình phát triển trong ASP.NET
» Webpage trong ASP.NET
» Cú pháp ASP.NET
» Đối tượng trong ASP.NET
20 trang |
Chia sẻ: phuongt97 | Lượt xem: 418 | Lượt tải: 0
Nội dung tài liệu Bài giảng Công nghệ Web - Bài 07: Ứng dụng ASP.NET - Lê Quang Lợi, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài 07: Ứng dụng ASP.NET
Lê Quang Lợi
Email: loilequang@gmail.com
loilq@utehy.edu.vn
Bài 07: Ứng dụng ASP.NET
» Giới thiệu về ASP.NET
» Mô hình phát triển trong ASP.NET
» Webpage trong ASP.NET
» Cú pháp ASP.NET
» Đối tượng trong ASP.NET
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.1 Giới thiệu về ASP.NET
» ASP.NET (Model, Webpage, Server controls)
» Server Object (Cookies, session, Application)
» DataBase (SQLDataSource, Display DataControls)
» Rick Application (javascript, Jquery, Ajax)
» Webservice (WCF)
» WebApplication
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.1 Giới thiệu về ASP.NET
» ASP.NET chạy trên IIS của hệ điều hành Windows
» ASP.NET Cho phép phát triển ứng dụng trên Internet
. WebForm: Chạy trên các nền Webserver (IIS)
. MobileWeb: Chạy trên các thiết bị tài nguyên hạn chế
. WebService: dịch vụ cung cấp và xử lý dữ liệu
» Cung cấp cách phát triển ứng dụng đa người dùng
» Cấu trúc : Server site + Client Site
. Server site PlatForm: WebServer(IIS) + Server Language
. Client Site: HTML + CSS + Javascript (DOM+ jQurey + Ajax)
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.1 Giới thiệu về ASP.NET
» Dựa trên DotNET thừa hưởng mọi hỗ trợ từ DotNET
» Thế hệ kế tiếp của ASP (Active Server Page) hay ASP+
Phiên bản: 1.0, 2.0, 3.0, 3.5, 4.0 sắp tới 4.5
» Mô hình: SingleCode, code Behide, MVC
» Linh động, dễ triển khai, dễ phát triển
» Một trong các công nghệ web động mạnh mẽ
» ASP.NET (page, server controls, Webservice, Ajax )
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.1 Giới thiệu về ASP.NET
Client Mode
2 6
Request 1 4
APP Queue ASP.NET
3 ISAPI
5
3 ASP.NET
HTTP.SVS APP Queue RunTime
- Request: Yêu cầu 6 Enviornments
trang ASP.NET dựa 4
5
trên URL/URI
- Response: trả về
trang mã HTML ASP.NET
ISAPI
ASP.NET
RunTime
Enviornments IIS Windows
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2 Mô hình ứng dụng
» Single Site:
Web Page: Client Script kết hợp Sever script
» Code Behide: Server Script tách biệt Client Script
(Thay thế/Cải tiến từ mô hình Single Site)
» MVC(Model + View + Controls)
* Tách biệt
* Dễ triển khai/ thay đổi/bảo trì
* Dễ đào tạo
* Kiến trúc khoa học
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.1 Single Sidle
» Mã nguồn trộn lẫn mã <%@ Page Language="C#"
HTML AutoEventWireup="true"
CodeFile="Default5.aspx.cs"
» Khó phát triển khó thay Inherits="Default5" %>
đổi/kiếm soát lỗi
» Khó: bảo trì, mở rộng, thay
đổi
» Tốc độ chậm
» Chi phí: thời gian + kinh phí chào
phát triển lớn
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.1 Single Sidle
» Cú pháp:
hoặc server code
Ví dụ:
» In giá trị: hoặc Response.Write(“string”);
ví dụ:
» Bind dữ liệu:
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.2 Code Behidle
» Thiết kế tách biệt lập trình
» Dễ phát triển
» Dễ bảo trì + nâng cấp
» Dựa trên Template
» Trang ASPX(ASPX.CS + ASPX)
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.2 Code Behidle
<%@ Page Language="C#" using System.Web;
AutoEventWireup="true" using System.Web.UI;
CodeBehind=“frm1.aspx.cs" using System.Web.UI.WebControls;
Inherits="WP.WF1" %> namespace WebApplication2{
ASP.NET public partial class WF1 :
System.Web.UI.Page {
<form id="form1" protected void Page_Load(object
runat="server"> sender, EventArgs e) {
<asp:Button ID=“btn" // mã C#
runat="server“ }
Text="Button" protected void btn_Click(object sender,
Click=“btn_Click”/> EventArgs e) {
// mã C# }
}
}
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.2 Code Behidle
» WebForm: Giao diện Web Cụ thể dựa trên controls
» WebForm : HTML tags + ServerControl tags
» Server Script: viết trong trang ASPX.CS
. Chứa các sự kiện của trang ASPX: Load, UnLoad
. Sự kiện các điều khiển: Click, SelectedChange
. Điều khiển toàn bộ hoạt động của trang(sự kiện)
. Cài đặt thực thi các nghiệp vụ
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.2 Code Behidle
Tuần tự sự kiện trong webpage
1) Initialization()
2) Page_Load() request
2.1 Control_Load()
2.2 ControlsEvent: Click, Forcus
3) Render()
response
4) Unload()
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.2.2 Code Behidle
protected void Page_Load(object sender, EventArgs e) {
// mã C# sự kiện load Webform
}
» Xuất hiện khi: trang được hiển thị
» Hỗ trợ:
. Tương tác CSDL: cung cấp dữ liệu cho trang
. Thiết lập dữ lệu/giá trị cho controls
. Kiểm tra hợp lệ và trạng thái đăng nhập
Chú ý: Boolean Page.IsPostBack; // True nếu được triệu gọi lại
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.3 Đối tượng cơ bản ASP.NET (Page Class)
» Page:Lưu trữ thông tin của trang hiện tại
» Điều khiển hoạt động của trang dựa trên sự kiện
» Chứa Request và Response: giao tiếp web brower
. Request: Nhận dữ liệu từ Client qua POST/GET
. Response: Trả dữ liệu HTML về phía Client qua HTTP
. Server: chứa các thông tin về phía server
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.3.1 server
» Truy cập các thuộc tính/phương thức ứng dụng web
» Thuộc tính: MachinName
» Phương thức:
Phương thức Mô tả
CreateObject Tạo một object
Execute Thực thi file ASPX trong ứng dụng
GetLastError() lấy về mã lỗi lần sau cùng khi chạy
HTMLEncode Thiết lập/lấy về mã Endcoding
MapPath Đường dẫn vật lý
Transfer chuyển trang trong ASP.NET
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.3.2 Request (instream)
» Luồng nhập dữ liệu ứng dụng Web
» Chứa dữ liệu từ phía Brower gửi lên
» Thuộc tính:
. Brower: thông tin về trình duyệt
. Cookies: chứa các cookie
. Filepath: đường dẫn file được Upload
. Files: Các file được Upload
. InputStream: luồng nhập dữ liệu nhị phân
. Form: lấy dữ liệu gửi với method=“post”
. QueryString: lấy dữ liệu gửi với method=“get”
» Phương thức:
. BinaryRead, SaveAs
. MapPath: ứng dụng web
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.3.3 Response (outStream)
» Chứa các thông tin về luồng xuất dữ liệu
» Kế thừa từ luồng OutputStream
» Thuộc tính: Output, OutputStream, Cookies, Cache, Buffer,
» Phương thức:
. Redrect, RedrectURL: chuyển trang
. Write, BinaryWrite, WriteFile: Ghi dữ liệu cho Brower
. SetCookies: Thiết lập Cookies
. TransmitFile: truyền file
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.3.4 Tương tác với Giao diện Web
» Nhận dữ liệu từ các controls:
. tenControls.Thành phần: string name1=txtname.Text;
. var a = Request.Form[index/key];dữ liệu theo Post
. var b = Request.QueryString[index/key]: dữ liệu theo Get
Ví dụ: string txtname=Request.QueryString*“name”+;
» Xuất dữ liệu:
. TenControl.Thuộc tính = giá trị;
. In giá trị:
. Response.Write(“chuỗi”);
. Binding Trường:
Ví dụ: txtName.text=“ASP.NET”;
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
7.3.5 Chuyển trang trong ASP.NET
» Chuyển xử lý từ trang hiện tại sang trang mới
» Chuyển toàn bộ dữ liệu : name=giá trị
» Chuyển trang dùng Response
Response.Redirect(URL)
» Chuyển trang dùng Server
Server.Tranfer(URL)
Ví dụ: server.Tranfer(“”);
Lê Quang Lợi: loilequang@gmail.com Môn học : Công nghệ WEB (ASP.NET) CNPM-CNTT-ĐHSPKT HY
Các file đính kèm theo tài liệu này:
- bai_giang_cong_nghe_web_bai_07_ung_dung_asp_net_le_quang_loi.pdf