Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 45 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
45
Dung lượng
315,79 KB
Nội dung
Lê ðình Thanh, Công nghệ ASP.NET Lê ðình Thanh Bộ môn Mạng và Truyền thông Máy tính Khoa Công nghệ Thông tin Trường ðại học Công nghệ, ðHQGHN Bài giảng LẬP TRÌNH ỨNG DỤNG WEB Lê ðình Thanh, Công nghệ ASP.NET Công nghệ ASP.NET Bài 4 Lê ðình Thanh, Công nghệ ASP.NET Nội dung • Kiến trúc của ứng dụng Web ñộng • C# và ASP.NET • ADO.NET • Tạo dự án web ñộng Lê ðình Thanh, Công nghệ ASP.NET Web ñộng • Nội dung trang web (HTML + CSS + JavaScript) ñược Web Server sinh ra khi có yêu cầu từ Client. • Rất phổ dụng: Hầu hết các trang web thương mại ñều là web ñộng. • Sử dụng ngôn ngữ lập trình ña năng ñể sinh ra nội dung web. • Sử dụng CSDL. Lê ðình Thanh, Công nghệ ASP.NET Kiến trúc web ñộng Lê ðình Thanh, Công nghệ ASP.NET Web ñộng với CSDL CSDL Web Server Web Browser Database Provider http://www Yêu cầu dữ liệu Thao tác CSDL Dữ liệu Dữ liệu Nội dung (HTML) Lê ðình Thanh, Công nghệ ASP.NET Công nghệ phát triển Web (ñộng) • ða dạng và không ngừng ñược phát triển. • Microsoft: ASP, ASP.NET • Sun: Java Servelet, JSP. • Khác: PHP Lê ðình Thanh, Công nghệ ASP.NET ASP.NET Cơ bản về .NET Framework và ASP.NET Lê ðình Thanh, Công nghệ ASP.NET Kiến trúc .Net Framework Base Class Library Base Class Library Common Language Specification Common Language Specification Common Language Runtime Common Language Runtime ADO.NET: Data and XML ADO.NET: Data and XML Visual Studio.NET Visual Studio.NET ASP.NET: Web Services ASP.NET: Web Services and Web Forms and Web Forms Windows Windows Forms Forms Visual Basic Visual Basic ® C++ C++ C# C# JScript JScript ® … … Lê ðình Thanh, Công nghệ ASP.NET Mô hình thực thi Visual Basic Visual Basic Mã Mã ngu ngu ồ ồ n n Compiler Compiler C++ C++ C# C# Compiler Compiler Compiler Compiler Assembly Assembly IL Code IL Code Assembly Assembly IL Code IL Code Assembly Assembly IL Code IL Code Operating System Services Operating System Services Common Language Runtime Common Language Runtime JIT Compiler JIT Compiler Native Code Native Code Mã Mã trung trung gian gian Unmanaged Unmanaged Component Component Lê ðình Thanh, Công nghệ ASP.NET Thực thi chương trình .NET Mã nguồn .NET Phiên dịch MSIL + Siêu dữ liệu Mã máy Thực thi mã CLR Biên dịch lần 1 Biên dịch lần 2 Chương trình .NET ñược dịch 2 lần – lần thứ nhất chậm, lần thứ hai nhanh hơn nhiều! Lê ðình Thanh, Công nghệ ASP.NET Ngôn ngữ trung gian của Microsoft Mã nguồn .NET Phiên dịch MSIL + Siêu dữ liệu Mã máy Thực thi mã CLR MSIL Ngôn ngữ trợ giúp liên tác IL không phải, nhưng rất gần bytecode. Do vậy, khi ứng dụng ñược thực thi, chuyển ñổi từ IL sang mã máy rất nhanh! MSIL ñược chuyển ñổi sang mã máy bởi CLR Tập các lệnh ñộc lập máy Lê ðình Thanh, Công nghệ ASP.NET Thực thi ngôn ngữ chung Mã nguồn .NET Phiên dịch MSIL + Siêu dữ liệu Mã máy Thực thi mã CLR CLR Quản lý bộ nhớ Dễ dàng thiết kế các thành phần và ứng dụng với những ñối tượng ñược viết từ nhiều ngôn ngữ khác nhau Tích hợp các ngôn ngữ (ñặc biệt kế thừa giữa các ngôn ngữ) Biên dịch một lần, và chạy trên bất kỳ CPU & OS nào có hỗ trợ CLR! Lê ðình Thanh, Công nghệ ASP.NET ASP.NET - Kiến trúc ASPX .ASPX .ASPX Lê ðình Thanh, Công nghệ ASP.NET ASP.NET - Kiến trúc .ASPX .ASPX Compiled Compiled Lê ðình Thanh, Công nghệ ASP.NET ASP.NET - Kiến trúc .ASPX .ASPX Compiled Compiled Lê ðình Thanh, Công nghệ ASP.NET ASP.NET – ðặc ñiểm • Hướng ñối tượng: Mỗi trang bao gồm hai ñối tượng kế thừa nhau. • Tách mã giao diện (HTML) với mã xử lý bằng kỹ thuật Codebehind. • ⇒ Dễ viết chương trình, tìm lỗi. • ⇒ Giấu ñược mã (mã ñược dịch thành DLL). .aspx .aspx.cs Lê ðình Thanh, Công nghệ ASP.NET ðối tượng Request • ðối tượng Request nắm giữ HTTP request và cung cấp các phương thức xử lý HTTP request. • Mỗi trang .aspx ñều chứa ñối tượng Request như một thuộc tính ñược kế thừa. • Lấy ñối tượng Request bằng lệnh this.Request • Hai thuộc tính và phương thức quan trọng nhất của ñối tượng Request là: – Lấy URL của tài liệu ñược yêu cầu: this.Request.RawURL – Lấy giá trị các tham số ñược truyền cùng URL: this.Request.QueryString.Get(“ten_thamso”); Lê ðình Thanh, Công nghệ ASP.NET Request – Nhận giá trị tham số (1) • Giả sử các tham số ñược truyền cùng URL là • http://uet.vnu.edu.vn/Bantin.aspx?cid=10&id=123 • Trong Bantin.aspx.cs, chúng ta sử dụng các câu lệnh sau ñể lấy giá trị cid và id int cid = Convert.ToInt32(this.Request.QueryString.Get(“cid”)); int id = Convert.ToInt32(this.Request.QueryString.Get(“id”)); Lê ðình Thanh, Công nghệ ASP.NET Request – Nhận giá trị tham số (2) • Giả sử các tham số trên form thuộc trang Nhap.aspx ñược truyền cùng URL theo phương thức POST là • <form action = “Kiemtra.aspx”> – <input type = “text” name = “hoten” width = “200”> – <input type = submit value = “Chap nhan”> • <form> • Lấy họ tên do người dùng nhập (trong Kiemtra.aspx.cs) String sHoten = this.Request.QueryString.Get(“hoten”); [...]... Ngư c l i, trang ñư c g i l i Lê ðình Thanh, Công ngh ASP.NET ASP.NET – Ho t ñ ng v i ñi u khi n phía server có AutoPostBack = true URL, tham s Yêu c u l n th nh t Trang k t qu x lý Trang v i tr ng thái ñi u khi n ñã thay ñ i Tương tác v i ñi u khi n trên giao di n Trang k t qu x lý thay ñ i Tương tác khác … Server Lê ðình Thanh, Công ngh ASP.NET Client User ASP.NET – ð c ñi m (3) • V i các ñi u khi n... CustomValidator > Lê ðình Thanh, Công ngh ASP.NET Thu c tính Page.isValid • Ban ñ u Page.isValid = true • N u các ñi u khi n ki m tra b t ñư c l i, chúng s ñ t Page.isValid = false • S d ng: if (Page.isValid) { //X lý nghi p v thông thư ng } else { //X lý l i } Lê ðình Thanh, Công ngh ASP.NET ADO.NET Ki n trúc ADO.NET Truy v n, c p nh t ph bi n Lê ðình Thanh, Công ngh ASP.NET ADO.NET – Ki n trúc _DataAdapter... Authors Lê ðình Thanh, Công ngh ASP.NET ADO.NET - DataSet DataSet Database Authors Connection Publishers Lê ðình Thanh, Công ngh ASP.NET DataAdapter Select … from Publishers Publishers Publishers ADO.NET – K t n i CSDL SQL Server • String sConn = “server=ATTA; database=Daotao; uid=sa; pwd=sa;“; • SqlConnection m_Conn = new SqlConnection(sConn); • m_Conn.Open(); Lê ðình Thanh, Công ngh ASP.NET ADO.NET –... Load Lê ðình Thanh, Công ngh ASP.NET T o giao di n trong ASP.NET • S d ng các ñi u khi n phía server, b t s ki n nh AutoPostBack (d vi t chương trình, chương trình ho t ñ ng n ng n ) – ði u khi n hi n th – ði u khi n nh p li u – ði u khi n ki m tra • Ho c s d ng các ñi u khi n phía client thông thư ng + AJAX (ph i vi t nhi u hơn, chương trình ho t ñ ng nh nhàng) Lê ðình Thanh, Công ngh ASP.NET Các ñi u... ds.Tables(“Abc”); • ðóng t p fs.Close(); Lê ðình Thanh, Công ngh ASP.NET M u trang tài li u XML, Abc là các ph n t d li u T o giao di n b ng các ñi u khi n giao di n có ràng bu c d li u S d ng các ñ i tư ng ASP.NET có th ñ c ngu n d li u và t ñ ng sinh mã giao di n Lê ðình Thanh, Công ngh ASP.NET Ràng bu c d li u – Data Bind • Ý tư ng:... Lê ðình Thanh, Công ngh ASP.NET DataList • Ràng bu c d li u và hi n th d li u ñư c ràng bu c dư i d ng danh sách Lê ðình Thanh, Công ngh ASP.NET Lư i d li u... ðình Thanh, Công ngh ASP.NET _: Sql, Odbc, OleDb ADO.NET – Các gói • System.Data Các l p d li u • System.Data.Common Các l p chung • System.Data.Odbc Các l p làm vi c v i CSDL thông qua ODBC • System.Data.OleDb Các l p làm vi c v i CSDL thông qua OLEDB • System.Data.SqlClient Các l p làm vi c v i CSDL SQL Server • System.Data.SqlTypes Các l p ñ nh ki u d li u SQL Lê ðình Thanh, Công ngh ASP.NET ADO.NET... u nh p không th là ch , …) ði u khi n ki m tra Tiêu chí d li u nh p * ði u khi n nh p li u Lê ðình Thanh, Công ngh ASP.NET ði u khi n ki m tra nh p li u Báo cáo l i ValidationSummary ði u khi n ki m tra 1 ði u khi n ki m tra 2 ði u khi n ki m tra 3 ði u khi n ki m tra m Lê ðình Thanh, Công ngh ASP.NET ði u khi n nh p li u 1 ði u khi n nh p li u 2 ði u khi n nh p li u n ði u khi n ki m tra nh p li u... this.Response.Write(dr.GetSqlString(1)); this.Response.Write(""); } Lê ðình Thanh, Công ngh ASP.NET Ghi d li u ra t p XML DataSet ds = new DataSet(); … ds.WriteXml(“abcfile.xml”); M u trang tài li u XML, Abc là các ph n t d li u Lê ðình Thanh, Công ngh ASP.NET L y d li u t t p XML • M t p tài li u XML FileStream fs = new FileStream(“abc.xml”,... nghĩa hàm ki m tra Lê ðình Thanh, Công ngh ASP.NET RequiredFieldValidator • Ki m tra d li u ñư c nh p vào ñi u khi n nh p li u hay chưa Lê ðình Thanh, Công ngh ASP.NET CompareValidator • So sánh . ðình Thanh, Công nghệ ASP. NET ASP. NET - Kiến trúc ASPX .ASPX .ASPX Lê ðình Thanh, Công nghệ ASP. NET ASP. NET - Kiến trúc .ASPX .ASPX Compiled Compiled Lê ðình Thanh, Công nghệ ASP. NET ASP. NET - Kiến. ASP. NET Công nghệ ASP. NET Bài 4 Lê ðình Thanh, Công nghệ ASP. NET Nội dung • Kiến trúc của ứng dụng Web ñộng • C# và ASP. NET • ADO .NET • Tạo dự án web ñộng Lê ðình Thanh, Công nghệ ASP. NET Web. Công nghệ ASP. NET Công nghệ phát triển Web (ñộng) • ða dạng và không ngừng ñược phát triển. • Microsoft: ASP, ASP. NET • Sun: Java Servelet, JSP. • Khác: PHP Lê ðình Thanh, Công nghệ ASP. NET ASP. NET Cơ