BÀI GIẢNG môn lập TRÌNH WEB

276 878 0
BÀI GIẢNG môn lập TRÌNH WEB

Đ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

Chương I ASPNET Framework – Bảo trì trạng thái ứng dụng 22/10/2012 Mục tiêu • Học xong chương sinh viên có thể: – Hiểu khái niệm ASP.NET NET Framework – Biết sử dụng môi trường phát triển ứng dụng Web Visual Studio Net – Hiểu ý nghĩa cách bảo trì trạng thái ứng dụng – Tạo ứng dụng Web, lưu giữ sử dụng trạng thái đối tượng ứng dụng Cookies, Session Profile 22/10/2012 Nội dung • • • • • • • ASP.NET NET Framework Các điều khiển ASP.NET Trang ASP.NET Giới thiệu trạng thái ứng dụng Sử dụng Cookies Sử dụng Session Sử dụng Profile Bài ASP.NET NET Framework • Giới thiệu • Thư viện lớp Net Framework • Môi trường thực thi ngôn ngữ chung Giới thiệu • ASP.NET công nghệ tảng để xây dựng ứng dụng web dịch vụ web Microsoft • ASP.NET công nghệ xây dựng ứng dụng web • ASP.NET tích hợp chặt chẽ với hệ thống phần mềm Microsoft, từ hệ điều hành, web server… đến công cụ lập trình, truy cập liệu, bảo mật 22/10/2012 Định nghĩa ASP.NET • ASP.NET phần NET Framework bao gồm số thành phần sau: – Công cụ phát triển ứng dụng web Visual Studio NET – Không gian tên System.Web – Các điều khiển Server and HTML 22/10/2012 Ưu điểm ASP.NET • Phần thực thi ứng dụng web biên dịch, ứng dụng chạy nhanh ngôn ngữ thông dịch khác • Ứng dụng cập nhật liên tục mà không cần khởi động lại web server • Khả sử dụng NET Framework phần mở rộng Windows API • Khả sử dụng cácngôn ngữ phổ biến Visual Basic ngôn ngữ Visual C# • Khả sử dụng điều khiển server để xây dựng giao diện giống ứng dụng Windows 22/10/2012 Ưu điểm ASP.NET (tt) • Khả tạo điều khiển server • Sử dụng chế bảo mật có sẵn hệ điều hành Windows • Khả truy cập liệu ADO.NET • Khả hỗ trợ đầy đủ Extensible Markup Language (XML), cascading style sheets (CSS), chuẩn Internet khác • Các tính caching trang web, địa hóa nội dung tích hợp sẵn 22/10/2012 Các thành phần ứng dụng web • Ứng dụng web gồm phần chính: –Phần nội dung: • Web form, trang HTML, hình ảnh, âm thanh… –Phần xử lý: • Các tập tin thực thi, đoạn script –Phần thông tin cấu hình: • Các tập tin cấu hình, tập tin CSS, cấu hình web server 22/10/2012 Giới thiệu NET Framework • NET Framework tảng lập trình Microsoft để phát triển ứng dụng windows ứng dụng web • NET Framework gồm phần chính: – Thư viện lớp cung cấp hàm lập trình cấp thấp (tương tự Windows API) cấp cao để phát triển ứng dụng web (ASP.NET), truy cập liệu (ADO.NET), bảo mật… – Phần lõi thực thi gọi common language runtime (CLR) 22/10/2012 10 Cách thực thi ứng dụng NET 22/10/2012 11 Thư viện lớp NET • Thư viện lớp NET cung cấp khả sử dụng tính CLR • Thư viện lớp của.NET tổ chức theo không gian lớp • Mỗi không gian lớp chứa lớp có tính liên quan với 22/10/2012 12 Một số không gian tên NET • Namespace: Là tên gọi nhóm lớp đối tượng phục vụ cho mục đích • Ví dụ: – System – System.Data – System.Web – System.Web.UI.WebControls – System.Web.UI.WebControls.WebParts –… 22/10/2012 13 Một số không gian tên ứng dụng Web • System.Web: – Gồm đối tượng Application, Browser, Cache, Cookies, Exeception, Request, Response, Server Trace – Sử dụng lớp hầu hết tác vụ lập trình Web Các đối tượng Application định nghĩa Global.asax dựa lớp Application • GV 14 Một số không gian tên ứng dụng Web (tt) • System.Web.SessionState – Đối tượng Session – Sử dụng lớp để lưu trữ khôi phục thông tin trạng thái chứa Session • System.Web.Services – Đối tượng WebService – Sử dụng lớp để tạo sử dụng dịch vụ Web GV 15 Một số không gian tên ứng dụng Web (tt) • System.Web.UI – Đối tượng Page Control – Sử dụng lớp Web form để tạo điều khiển giao diện người dùng Web forms dựa lớp Page • System.Web.UI.WebControls – Tất đối tượng server control – Sử dụng lớp Web form GV 16 Một số không gian tên ứng dụng Web (tt) • System.Web.UI.HTMLControls – Tất đối tượng HTML control – Sử dụng lớp Web forms • System.Web.Caching – Đối tượng Cache – Sử dụng lớp để điều khiển trình caching server để cải thiện tốc độ thực thi ứng dụng GV 17 Một số không gian tên ứng dụng Web (tt) • System.Web.Mail – Đối tượng MailMessage, MailAttachment, đối tượng SmtpMail – Sử dụng lớp để gửi thông điệp mail từ ứng dụng web • System.Web.Security – Các đối tượng modun Authentication – Sử dụng lớp để xác nhận người dùng cung cấp chế bảo mật ứng dụng web GV 18 Assembly • Là file dll đĩa cứng, lưu trữ lớp NET – Ví dụ: tất lớp ASP.NET Framework nằm Assembly System.web.dll • Trước sử dụng lớp dll, cần tạo tham chiếu đến file dll – Right click lên thư mục Website cửa sổ Solution Explorer, chọn Add Reference… Môi trường thực thi ngôn ngữ chung • Commom Language Runtime (CLR): chịu trách nhiệm thực thi mã nguồn ứng dụng: mã nguồn ứng dụng NET biên dịch thành ngôn ngữ đặc tả Microsoft (Microsoft intermediate language - MSIL) chứa tập tin gọi assembly • Khi chạy ứng dụng, MSIL biên dịch sang mã máy máy JITTER (just in time compiler) • Trong trình thực thi, CLR tự động thực tác vụ quản lý nhớ, kiểm tra kiểu liệu, số tác vụ khác cho ứng dụng 10 22.11.2012 Đối tượng DataAdapter (tt) — Strongly Typed Dataset – DataAdapter: ◦ Sử dụng lớp Dataset: 49 Đối tượng DataAdapter (tt) — Thực thi truy vấn hành động code ◦ Thiết lập thuộc tính SelectCommand, InsertCommand, DeleteCommand UpdateCommand từ đối tượng SqlCommand ◦ Có thể sử dụng đối tượng CommandBuilder để tạo UpdateCommand, InsertCommand DeleteCommand ◦ Sử dụng phương thức Update() đối tượng SqlDataAdapter có dạng: – int SqlDataAdapter.Update(DataTable) 50 25 22.11.2012 Đối tượng DataAdapter (tt) 51 Đối tượng DataAdapter (tt) 52 26 22.11.2012 Đối tượng DataAdapter (tt) 53 Đối tượng DataAdapter (tt) 54 27 22.11.2012 Đối tượng DataAdapter (tt) 55 Đối tượng DataAdapter (tt) 56 28 22.11.2012 Đối tượng DataAdapter (tt) 57 Đối tượng DataTable Đối tượng DataTable tiêu biểu cho bảng sở liệu nhớ — Thuộc tính: — • • • • • TableName: tên bảng liệu Columns: danh sách cột Rows: danh sách mẫu tin PrimaryKey: danh sách cột khóa Phương thức: • NewRow(): tạo mẫu tin 58 29 22.11.2012 Đối tượng DataTable (tt) — Các thành phần DataTable ◦ Mỗi phần tử hàng DataTable DataRow ◦ Mỗi phần tử cột DataTable DataColumn — DataRow: ◦ Phương thức: – AcceptChanges(), RejectChanges(): xác nhận hay loại bỏ thay đổi đến hàng bảng – Remove: đánh dấu hàng bị xóa gọi AcceptChanges 59 Đối tượng DataTable (tt) — DataColumn: ◦ ColumnName: tên cột ◦ DataType: kiểu liệu — Tạo thêm liệu vào DataTable: ◦ Tạo đối tượng DataTable ◦ Tạo đối tượng DataColumn, thiết lập thuộc tính cho đối tượng ◦ Thêm DataColumn vào tập Columns đối tượng DataTable ◦ Tạo đối tượng DataRow, thiết lập giá trị cho ô DataRow ◦ Thêm đối tượng DataRow vào tập Rows đối tượng DataTable 60 30 22.11.2012 Đối tượng DataTable (tt) 61 Đối tượng DataTable (tt) Có thể truy xuất mẫu tin từ đối tượng DataTable cách sử dụng phương thức Select() — Khi truy xuất mảng mẫu tin phương thức Select(), định thứ tự xếp cho mẫu tin (Ex909.aspx) — 62 31 22.11.2012 Đối tượng DataTable (tt) — ) 63 Đối tượng DataTable (tt) 64 32 22.11.2012 Đối tượng DataTable (tt) Khi sửa đổi hàng DataTable, DataTable trì hai gốc (original version) sửa hàng (modified version) — Phương thức DataTable.AcceptChanges() sử dụng để chép tất hàng đến gốc tương ứng — Phương thức DataTable.RejectChanges() sử dụng để chép gốc tất hàng đến tương ứng — 65 Đối tượng DataTable (tt) 66 33 22.11.2012 Đối tượng DataView Là đối tượng sử dụng để lọc, xếp liệu từ DataTable — Đối tượng DataView có hai thuộc tính quan trọng: — ◦ Sort: xếp liệu dataView.Sort =“Fieldname”; ◦ RowFilter: lọc liệu dataView.RowFilter = “Alias like ‘abc%’”; 67 Đối tượng DataView (tt) — Tạo đối tượng DataView ◦ DataView dataView = new DataView(dataTable); Hoặc ◦ DataView dataView = dataTable.DefaultView; 68 34 22.11.2012 Đối tượng DataView (tt) 69 Đối tượng DataSet Đối tượng DataSet thể cho sở liệu nhớ — Một DataSet chứa hay nhiều đối tượng DataTable — Các bảng DataSet liệu đổ vào từ DataAdapter (sử dụng phương thức Fill) tạo thành từ đối tượng DataTable — Có thể cập nhật liệu từ bảng vào sở liệu thông qua phương thức Update đối tượng DataAdapter — 70 35 22.11.2012 Đối tượng DataSet (tt) — Đặc điểm DataSet ◦ Không kết nối với nguồn liệu ◦ Không phân biệt liệu thuộc nguồn (SQL Server, OLE DB, ODBC, …) ◦ Có thể lưu trữ liệu từ nhiều bảng (Table), nhiều nguồn (Data Source) khác — Truy xuất bảng DataSet: ◦ dsName.Tables[index] ◦ Hoặc dsName.Tables[“DataTableName”] — Thêm xóa bảng phương thức Add, Remove tập Tables 71 Đối tượng DataSet (tt) 72 36 22.11.2012 Đối tượng DataSet (tt) 73 Sử dụng mô hình phi kết nối để thao tác với sở liệu — Để thao tác với sở liệu mô hình phi kết nối cần sử dụng đến đối tượng: ◦ DataConnection: Dùng để mở kết nối đến sở liệu (Có thể có không) ◦ DataAdapter ◦ DataSet ◦ DataTable, DataRow… 74 37 22.11.2012 Truy vấn lấy liệu — — — — — B1 Tạo đối tượng DataConnection, mở kết nối đến sở liệu (có thể không sử dụng) B2 Tạo đối tượng DataAdapter gắn với đối tượng DataConnection mở chuỗi kết nối đến sở liệu, kết hợp với câu truy vấn select B3 Gọi phương thức Fill để điền liệu lấy vào DataSet (hoặc DataTable) B4 Sử dụng tập hợp Tables đối tượng DataSet để làm việc với liệu lấy B5 Đóng giải phóng đối tượng không cần thiết 75 Truy vấn lấy liệu 76 38 22.11.2012 Truy vấn hành động CSDL — — — — — — B1 Tạo đối tượng DataConnection, mở kết nối đến sở liệu (có thể không sử dụng) B2 Khai báo tạo đối tượng DataAdapter B3 Thay đổi liệu bảng liệu nằm DataSet B4 Tạo đối tượng CommandBuilder gắn với biến đối tượng DataAdapter B5 Thi hành phương thức Update để cập nhật thay đổi liệu bảng lên sở liệu B6 Đóng giải phóng biến đối tượng không cần thiết 77 Truy vấn hành động CSDL 78 39 [...]... trước khi sử dụng • Khi trình duyệt web tạo một Cookie, một nội dung sẽ được lưu vào header của trang web với nội dung có dạng: Set-Cookie: Message = value • Phần tiêu đề Set-Cookie này yêu cầu trình duyệt web tạo một Cookie có tên là Message coq giá trị là value 32 Cookies • Sau khi một Cookie được tạo trên trình duyệt, mỗi khi trình duyệt yêu cầu một trang web trong ứng dụng, trình duyệt sẽ gửi một... server Vòng đời của webform (tt) • Sau khi nhận được view state, server sẽ khởi tạo phiên bản mới của web form, đổ dữ liệu từ view state vào web form, sau đó thực hiện việc xử lý các sự kiện đã phát sinh • Sau khi xử lý xong, server sẽ trả kết quả lại cho trình duyệt dưới dạng HTML và hủy phiên bản vừa tạo ra của web form 29 Vòng đời của webform (tt) Cách bảo toàn dữ liệu trên Webform • Web forms được tạo... 26 Trình tự xử lý sự kiện các điều khiển Server GV 53 Bài 4 Các trạng thái ứng dụng • Vòng đời của ứng dụng web • Vòng đời của webform • Các mức trạng thái của ứng dụng – Query String – Cookie – Session – Profile 27 Vòng đời của ứng dụng web • Khi người dùng đóng trình duyệt hoặc chuyển sang một web site khác, session của người dùng kết thúc • Nếu không tồn tại session của người dùng nào, ứng dụng web. .. có dạng : Cookie: Message = value • Tiêu đề Cookie chứa đựng tất cả các Cookie được tạo trên Web Server Cookie được gửi trở lại mỗi khi một yêu cầu được đưa ra trên trình duyệt web Cookies (tt) • Có hai loại cookie: – Session cookies chỉ tồn tại khi trình duyệt web còn làm việc, và bị hủy khi đóng trình duyệt web – Persistent Cookies: có thể tồn tại khá lâu Khi một Persistent Cookies được tạo, nó sẽ... trên trang Web • Lưu trữ các chuỗi trong hàm Button1_Click • Tạo ra các ô và dòng trong bảng từ các chuỗi này, như trình bày trong thủ tục Page_PreRender 14 View State (tt) GV 29 Bài 3 Trang ASP.NET • • • • • Tạo ứng dụng web trong môi trường VS.Net Biên dịch động Trang code-behind Biến cố mức trang Thuộc tính Page.IsPosBack 15 Tạo ứng dụng web • Khởi động VisualStudio 2008 • File, New, Web Site 22/10/2012... Khởi động VisualStudio 2008 • File, New, Web Site 22/10/2012 31 Tạo ứng dụng web 22/10/2012 32 16 Thêm Trang ASP.NET Vào Web Site 22/10/2012 33 Thêm Trang ASP.NET Vào Web Site 22/10/2012 34 17 Chọn trang web làm trang mặc định 22/10/2012 35 Biên dịch 22/10/2012 36 18 Chạy thử trang web 22/10/2012 37 Trang code-behind • Khi một website được tạo, mặc định ứng dụng sẽ tạo ra một tập tin Default.aspx và một... Application_End xảy ra GV 55 Vòng đời của ứng dụng web (tt) GV 56 28 Vòng đời của webform • Khi người dùng yêu cầu một trang web, trình duyệt hiển thị mã HTML nhận được, người dùng có thể tương tác với các điều khiển như gõ vào textbox, lựa chọn trong listbox,… cho đến khi thực hiện tác vụ làm phát sinh sự kiện post-back (nhấn vào button,…) • Sự kiện post-back khiến trình duyệt gửi lại dữ liệu của trang (dưới... của ứng dụng web – Application_Start: Chỉ xảy ra một lần đầu tiên khi bất kỳ trang nào trong ứng dụng được gọi – Application_End: Xảy ra khi dừng hoạt động của WebServer – Application_Error: Xảy ra khi có lỗi phát sinh trong quá trình thực thi – Application_BeginRequest: xảy ra mỗi khi trình duyệt di chuyển đến một trang của ứng dụng – Application_EndRequest – Kết thúc xử lý yêu cầu của trình duyệt... tại mỗi thời điểm mà trình duyệt trên máy khách tạo ra một yêu cầu • Do đó, các giá trị biến bên trong Web form không giữ lại giá trị của chúng sau khi trang Web được hiển thị • Để giải quyết vấn đề này ASP.NET cung cấp một số cách thức để giữ lại giá trị các biến giữa các yêu cầu GV 60 30 Query strings • Chuyển thông tin giữa các yêu cầu và phản hồi thông qua một phần của địa chỉ Web • Query strings... sử dụng trong mã lệnh • Page_PreRender: xảy ra khi trang Web chuẩn bị được trả về cho Client GV 47 Sự kiện mức trang (tt) • Page_Unload: Gỡ trang: web form sắp bị hủy • Page_Disposed: Hủy trang: web form đã bị hủy • Page_Error: Trang bị lỗi: có lỗi chưa được xử lý xảy ra GV 48 24 Sự kiện mức trang • Các sự kiện chính thường được sử dụng của web form là Page_Load và Page_Error • Có thể kết hợp thuộc

Ngày đăng: 15/08/2016, 19:29

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan