1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tìm hiểu asp net và xây dựng website phòng trọ sinh viên

53 4 0

Đ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ìm hiểu asp net và xây dựng website phòng trọ sinh viên
Tác giả Sinh viên Nguyễn Thị Bính
Người hướng dẫn Thạc sỹ Hồ Thị Huyền Thương
Trường học Trường Đại Học Vinh
Chuyên ngành Khoa Công Nghệ Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2009
Thành phố Vinh
Định dạng
Số trang 53
Dung lượng 1,33 MB

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

Nội dung

 HTML: Ngôn ngữ đánh dấu siêu văn bản HTML đ-ợc sử dụng để tạo các tài liệu có thể truy cập trên Web.. Chẳng hạn ngoài việc phải xử lý trang HTML ta còn phải có khả năng tạo các trang

Trang 1

Em xin bày tỏ lòng cảm ơn sâu sắc tới:

Thạc sỹ Hồ Thị Huyền Th-ơng-giảng viên tổ ph-ơng pháp giảng dạy

khoa Công nghệ thông tin, cô đã t- vấn cho em chọn đề tài, h-ớng dẫn tận

tình, tạo mọi điều kiện thuận lợi trong suốt quá trình thực hiện khóa luận

Đồng thời em cũng bày tỏ lời cảm ơn chân thành tới các Thầy, Cô giáo

Khoa Công nghệ thông tin, tổ bộ môn ph-ơng pháp giảng dạy cùng gia đình,

bạn bè và ng-ời thân đã tạo mọi điều kiện giúp đỡ, động viên em hoàn thành

khóa luận này

Vinh, tháng 5 năm 2009

Trang 2

2

Mở đầu 3

Lý do chọn đề tài 3

Nội dung nghiên cứu 3

Ch-ơng I: Giới thiệu Internet, HTML 4

1.1 Giới thiệu HTML 5

1.2 HTML Development 5

1.3 Cấu trúc của một tài liệu HTML 6

Ch-ơng II: Giới thiệu về ASP.NET 8

2.1 Yếu tố đặc biệt của ASP.NET 9

2.2 Những đặc điểm mới của ASP.NET 2.0 14

2.3 .NET FrameWork và trang ASP.NET 16

2.4 Cấu hình trang ASP.NET 25

2.5 Kiến trúc trang ASP.NET 27

2.6 Tiến trình biên dịch trang ASP.NET 2.0 30

Ch-ơng III: Xây dựng ứng dụng Website “phòng trọ sinh viên” 35

3.1 Phân tích và thiết kế hệ thống 35

3.1.1 Phân tích hệ thống 36

3.1.1.1 Biểu đồ phân cấp chức năng 38

3.1.1.2 Biểu đồ luồng dữ liệu 38

3.2 Thiết kế hệ thống 41

3.3 Cài đặt hệ thống 43

3.3.1 Trang chủ 43

3.3.2 Tìm phòng 44

3.3.3.Tin tr-ờng 45

3.3.4 Đăng ký 47

Kết luận 50

Tài liệu tham khảo 51

Trang 3

Hàng năm, tr-ờng đại học Vinh lại đón hàng nghìn sinh viên mới vào nhập học Hiện nay nhà tr-ờng ch-a có đủ chỗ ở nội trú cho sinh viên Vì vậy nhu cầu tìm nhà trọ là một nhu cầu tất yếu Từ tr-ớc tới nay hầu nh- sinh viên tìm đ-ợc nhà trọ là do giới thiệu của anh chị, bạn bè, hay là do chủ trọ đón khách Nh- vậy thì sinh viên mới đến đang còn bỡ ngỡ, ch-a quen đ-ờng thuộc lối nên có thể sẽ không tìm đ-ợc cho mình một nhà trọ phù hợp với nhu cầu sinh sống, điều kiện học tập, phù hợp với điều kiện gia đình mình Bên cạnh đó thì những gia đình có phòng cho sinh viên thuê lại phải đón khách trọ tại cổng tr-ờng, bến xe, ga tàu… Nh- vậy sẽ gây mất trật tự nơi công cộng

khi tranh giành hoặc chào mời khách mà không đạt hiệu quả cao

Để góp phần giải quyết những vấn đề bất cập thực tế nh- trên và để tận

dụng đ-ợc tiềm năng của mạng Internet, tôi chọn đề tài khóa luận tốt nghiệp ngành cử nhân khoa học công nghệ thông tin: “Tìm hiểu ASP.NET xây dựng trang Website Phòng trọ sinh viên” Ưu điểm của trang Website này là sinh

viên có thể tự tìm cho mình một nhà trọ phù hợp với điều kiện sống, điều kiện học tập và giá cả hợp lý Bên cạnh đó đối với các chủ trọ không cần phải đón khách trọ tại những nơi công cộng đông đúc gây mất trật tự, không hiệu quả

mà chỉ cần đăng ký qua Website này Sau đó sinh viên mới sẽ tự tìm hiểu các phòng trọ trên trang Website và chọn cho mình một phòng trọ phù hợp nhất

2 Mục tiêu của đề tài

Là xây dựng đ-ợc một trang Website “Phòng trọ sinh viên” với các

chức năng đơn giản, thuận tiện và hiệu quả Hệ thống làm việc ổn định, hạn chế đến mức thấp nhất các lỗi có thể xảy ra

3 Nội dung nghiên cứu

- Tìm hiểu Web page (HTML), ASP.NET

- Xây dựng Website “Phòng trọ sinh viên”

Trang 4

4

“Internet‛, ‚World Wide Web‛, và ‚Web page‛ không chỉ còn là các thuật ngữ Giờ đây các thuật ngữ này đã trở thành hiện thực Internet là mạng máy tính lớn nhất thế giới, đ-ợc xem nh- là mạng của các mạng World Wide Web là một tập con của Internet World Wide Web gồm các Web Servers có mặt khắp nơi trên thế giới Các Web Server chứa thông tin mà bất kì ng-ời

dùng nào trên thế giới cũng có thể truy cập đ-ợc Các thông tin đó đ-ợc l-u

trữ d-ới dạng các trang Web

Ngôn ngữ đánh dấu siêu văn bản (HTML), đây là một phần quan trọng trong lĩnh vực thiết kế và phát triển thế giới Web

Mạng là một nhóm các máy tính kết nối với nhau Internet là mạng của các mạng Giao thức TCP/IP (Transmission Control Protocol/Internet Protocol) cung cấp việc kết nối tất cả các máy tính trên thế giới

World Wide Web là một tập con của Internet Nó bắt đầu nh- là đề án

nghiên cứu cấp quốc gia tại phòng nghiên cứu CERN của Thụy Sỹ Ngày nay

nó cung cấp thông tin cho ng-ời dùng trên toàn thế giới

www hoạt dộng dựa trên 3 cơ chế để đ-a các tài nguyên có giá trị đến với ng-ời dùng Đó là:

 Giao thức: ng-ời dùng tuân theo các giao thức này để truy cập

tài nguyên trên Web

 Địa chỉ: www tuân theo một cách thức đặt tên thống nhất để

truy cập vào các tài nguyên trên Web URL đ-ợc sử dụng để nhận dạng các trang và các tài nguyên trên Web

 HTML: Ngôn ngữ đánh dấu siêu văn bản (HTML) đ-ợc sử dụng

để tạo các tài liệu có thể truy cập trên Web Tài liệu HTML đ-ợc tạo

ra bằng cách sử dụng các thẻ và các phần tử của HTML File đ-ợc l-u trên Web Server với đuôi htm hoặc HTML

Trang 5

Khi ta sử dụng trình duyệt để yêu cầu một số thông tin nào đó, Web Server sẽ đáp ứng các yêu cầu đó Nó gửi thông tin đ-ợc yêu cầu đến trình duyệt d-ới dạng các trang Web Trình duyệt định dạng thông tin đó máy chủ

- Điều khiển hình thức và nội dung của trang

- Xuất bản các tài liệu trực tuyến và truy xuất thông tin trực tuyến bằng cách

sử dụng các liên kết đ-ợc chèn vào tài liệu HTML

- Tạo các biểu mẫu trực tuyến để thu nhập thông tin về ng-ời dùng, quản lý các giao dịch

- Chèn các đối t-ợng nh- Audio clip, video clip, các thành phần Active các Java Applet vào tài liệu HTML

Tài liệu HTML tạo thành mã nguồn của trang Web Khi đ-ợc xem trên

trình soạn thảo, tài liệu này là một chuỗi các thẻ và các phần tử, mà chúng xác

định trang Web hiển thị nh- thế nào Trình duyệt đọc các file có đuôi htm hay HTML và hiển thị trang Web đó theo các lệnh có trong đó

1.2 HTML Development

Tài liệu HTML đ-ợc hiển thị trên trình duyệt Trình duyệt là một ứng dụng đ-ợc cài đặt trên máy khách Trình duyệt đọc mã nguồn HTML và hiển

thị trang theo các lệnh trong đó

Trình duyệt đ-ợc sử dụng để xem các trang Web và điều h-ớng Trình duyệt đ-ợc biết đến sớm nhất là Mosaic, đ-ợc phát triển bởi trung tâm ứng dụng siêu máy tính quốc gia (NCSA) Ngày nay, có nhiều trình duyệt đ-ợc sử dụng trên Internet Netscape’s Navigator và Microsoft’s Internet Explorer là

hai trình duyệt đ-ợc sử dụng phổ biến Đối với ng-ời dùng, trình duyệt dễ sử dụng vì nó có giao diện đồ họa với việc trỏ và kích chuột

Trang 6

6

Để tạo một tài liệu nguồn, ta cần có một trình soạn thảo HTML Ngày nay có nhiều trình soạn thảo đang đ-ợc sử dụng: Micosoft Front Page là một công cụ tổng hợp đ-ợc dùng để tạo, thiết kế và hiệu chỉnh các trang Web

Chúng ta cũng có thể thêm văn bản, hình ảnh, bảng và những thành phần khác

vào trang Thêm vào đó, một biểu mẫu cũng có thể tạo ra bằng Front Page Một khi chúng ta tạo ra giao diện cho trang Web, Front Page tự động mã HTML cần thiết Chúng ta cũng có thể dùng Notepad để tạo tài liệu HTML

Để xem đ-ợc tài liệu trên trình duyệt ta phải l-u nó với đuôi là htm hay html

Các lệnh HTML đ-ợc gọi là các thẻ Các thẻ này đ-ợc dùng để điều khiển nội dung và hình thức trình bày của tài liệu HTML Thẻ mở (“<>”) và thẻ đóng (“</>”), chỉ ra sự bắt đầu và kết thúc của một lệnh HTML

1.3 Cấu trúc của một tài liệu HTML

Một tài liệu HTML bao gồm 3 phần cơ bản:

- Phần HTML: Mọi tài liệu HTML phải bắt đầu bằng thẻ mở HTML

<HTML> và kết thúc bằng thẻ đóng HTML </HTML> Thẻ HTML báo cho trình duyệt biết nội dung giữa hai thẻ này là một tài liệu HTML

- Phần tiêu đề: Phần tiêu đề bắt đầu bằng thẻ <HEAD> và kết thúc bằng

</HEAD> Phần này chứa tiêu đề mà đ-ợc hiển thị trên thanh điều h-ớng của trang Web Tiêu đề nằm trong thẻ TITLE, bắt đầu bằng thẻ <TITLE> và kết thúc là thẻ </TITLE>

Tiêu đề: là phần khá quan trọng Các mốc đ-ợc dùng để đánh dấu một

Website Trình duyệt sử dụng tiêu đề để l-u trữ các mốc này Do đó khi ng-ời dùng tìm kiếm thông tin, tiêu đề của trang Web cung cấp từ khóa chính cho

việc tìm kiếm

- Phần thân: Phần này nằm sau phần tiêu đề Phần thân bao gồm văn

bản, hình ảnh và các liên kết mà ta muốn hiển thị trên trang Web của mình Phần thân bắt đầu bằng thẻ <BODY> và kết thúc bằng thẻ </BODY>

 Đoạn: Thẻ <P> để trình bày một đoạn Khi viết một bài báo hay một

bài luận, ta nhóm nội dung thành một loạt các đoạn Mục đích là nhóm

Trang 7

các lý t-ởng logic lại với nhau và áp dụng một số định dạng cho nội

dung Trong một tài liệu HTML, nội dung có thể đ-ợc nhóm thành các

đoạn Thẻ đoạn <P> đ-ợc sử dụng để đánh dấu sự bắt đầu của một đoạn mới Thẻ đóng </P> là không bắt buộc Thẻ <P> kế tiếp sẽ tự động bắt

đầu một đoạn mới

 Các thẻ ngắt: Phần tử <BR> đ-ợc sử dụng để ngắt dòng trong tài

liệu HTML Thẻ <BR> bổ sung một ký tự xuống dòng tại vị trí thẻ

 Chọn canh lề: Thuộc tính align đ-ợc sử dụng để canh lề cho các

phần tử HTML trong trang Web Chúng ta có thể canh lề văn bản, các

đối tượng, hình ảnh, các đoạn, các phân đoạn,…

 Thuộc tính Align gồm các giá trị sau:

Left Văn bản đ-ợc canh lề trái Center Văn bản đ-ợc canh lề giữa Right Văn bản đ-ợc canh lề phải Justify Văn bản đ-ợc canh lề hai bên

Canh lề đ-ợc mặc định dựa vào h-ớng của văn bản Nếu h-ớng của văn bản là từ trái sang phải thì mặc định là trái

Ch-ơng II Giới thiệu về ASP.NET

Trang 8

8

ASP.NET là sự kế thừa và phát triển của ASP ASP.NET là một công nghệ Web xử lý từ phía máy chủ ASP.NET cho phép sử dụng ngôn ngữ trung lập Trang ASP.NET có thể viết bằng rất nhiều ngôn ngữ nh-: Vbscript, Jscript, Visual Basic, C++, C# ASP.NET cho phép tách rời giữa mã lập trình và nội dung tài liệu ASP.NET cung cấp các thành phần điều khiển hoạt

động, phía trình chủ hoạt động theo h-ớng xử lý sự kiện ASP.NET cung cấp

các dịch vụ phục vụ cho hoạt động của các thiết bị viễn thông có kết nối

Internet và máy chủ phục vụ Web Vì công việc phải xử lý trên máy chủ là rất nhiều Chẳng hạn ngoài việc phải xử lý trang HTML ta còn phải có khả năng tạo các trang WML, xử lý và trao đổi dữ liệu XML… ASP.NET cung cấp kiến trúc hạ tầng để xây dựng các ứng dụng phân tán trên Web theo giao thức triệu gọi SOAP (Simple Object Access Protocol- giao thức truy xuất đối t-ợng đơn giản), cho phép thực hiện chuyển đổi dữ liệu XML phục vụ cho môi tr-ờng th-ơng mại điện tử B2B (Business to Business) ASP.NET cung cấp đầy đủ

mọi dịch vụ từ bảo mật đến cấp phát bộ nhớ, thu gom rác, theo dõi sự quá tải của các thành phần đối t-ợng, cân bằng tải, giảm thiểu tối đa các kết nối tiêu

tốn tài nguyên Nói tóm lại ASP.NET là một môi tr-ờng lập trình mới và đây cũng là một ngôn ngữ hàng đầu cho việc thiêt kế và phát triển Web động hiện

nay

Ta biết rằng vấn đề thách thức lớn nhất đối với các ứng dụng Web ngày

nay là sự t-ơng thích trên các trình duyệt cùng với độ phức tạp của trang tài

liệu do ứng dụng tạo ra Để tạo một trang Web hấp dẫn và tận dụng đ-ợc

những tính năng mới nhất của trình duyệt nh-ng đồng thời vẫn hiển thị đúng

đắn trên các trình duyệt cũ quá là cơn ác mộng đối với lập trình viên và các

Trang 9

động trên trình chủ có khả năng nhận dạng và sinh mã tùy theo mục đích và yêu cầu sử dụng cuối của trình khách

Khi lập trình với ứng dụng Web, một trong hai ngôn ngữ lập trình đ-ợc

sử dụng là Visual Basic hay Visual J++ trong trang ASP (Active Server Page) trong những ngôn ngữ lập trình Visual Basic, J++, Visual FoxPro hay Visual C++ trong bộ Visual C++ trong bộ Visual Studio 6.0

Sau nhiều năm phát triển không ngừng, ASP đã đ-ợc nâng cấp từ phiên bản ASP 1.0, ASP 2.0, ASP.NET 1.0, ASP.NET 1.1, rồi đến ASP.NET 2.0, sau này là ASP.NET 3.0

Từ khi công nghệ Microsoft NET ra đời, 4 ngôn ngữ lập trình chính là Visual Basic.NET, C#, C++.NET và J# mở ra một kỷ nguyên mới trong công

nghệ phần mềm, chúng cho phép lập trình viên có thể xây dựng một ứng dụng

chạy trên nền NET bằng một trong các ngôn ngữ trên

Với sự chuẩn hóa cao dựa vào bộ khung (FrameWork), Microsoft cho phép những ứng dụng đ-ợc viết bằng một trong những ngôn ngữ Visual Basic.NET, C#, C++.NET và J# có thể biên dịch ra tập tin định dạng MIL (Microsoft Intermediate Language) có thể chạy trên FrameWork mà không cần trình thực thi (Runtime Engine) riêng biệt cho mỗi ngôn ngữ nh- những ngôn ngữ lập trình tr-ớc đây là Visual Basic 6.0, Visual C++ 6.0, Visual J++ 6.0 thuộc bộ Visual Studio 6.0

ASP.NET 2.0 là phiên bản kế tiếp của ASP.NET 1.1 với nhiều đặc điểm

với về cấu trúc, về cơ cấu, cơ chế thực hiện, quản lý hệ thống, tập điều khiển

đa dạng và t-ơng tác với cơ sở dữ liệu trên NETFrameWork 2.0, cho phép chúng ta xây dựng và triển khai ứng dụng Web tốt hơn

2.1 Yếu tố đặc biệt của ASP.NET 2.0

Ba ngôn ngữ lập trình trong bộ Visual Studio 2005 cho phép ta lập trình ứng dụng ASP.NET 2.0 là C# 2005, Visual Basic 2005 và J# 2005

Có 10 yếu tố đặc biệt ta cần biết khi lập trình ứng dụng Web bầng ASP.NET 2.0 dựa trên một trong ba ngôn ngữ C#, Visual Basic hay J#

Trang 10

10

 ASP.NET t-ơng tác với NETFrameWork

.NET FrameWork 2.0 là bộ khung chung, cho phép ta phát triển các loại ứng dụng trên nền NET nh-: Console Application Windows Forms, h-ớng đối t-ợng (OO), COM+,…chúng bao gồm lớp, structure, interface, namespace,…

Khi làm việc với ASP.NET 2.0, ta cũng có thể sử dụng những lớp, structure, namespace (không gian tên) hỗ trợ cho ASP.NET 2.0

 ASP.NET không cần trình chủ Web

Khác với phiên bản ASP.NET 1.1 là cần phải cài đặt IIS (Internet information Service) trên máy mà ta dùng để lập trình ứng dụng Web, đối với ASP.NET 2.0 thì ta không cần cài đặt IIS trên máy dùng để phát triển ứng dụng ASP.NET 2.0 mà chỉ cần cài đặt trên máy triển khai ứng dụng Thay vào

đó, mỗi khi tạo mới thành công thì một trình chủ ASP.NET Development Server đ-ợc tạo ra t-ơng ứng với ứng dụng đó IIS chính là trình chủ Web cho phép ta triển khai và chạy ứng dụng Web bằng ASP

 ASP.NET quản lý theo nhiều lớp

Một lớp trong ứng dụng NET 2.0 cho phép ta tách ra thành nhiều tập tin dựa trên từ khóa partial Điều này cho phép một lớp có thể có nhiều lập

trình viên trong nhóm cùng phát triển

 ASP.NET đ-ợc biên dịch thay vì thông dịch

Nếu nh- ta đã làm việc với kịch bản trình chủ ASP 3.0, phần mã và

phần thẻ HTML đ-ợc khai báo chen lẫn nhau, khi triệu gọi trang ASP 3.0 trên trình duyệt, trang ASP 3.0 đ-ợc thông dịch

Khi làm việc với ASP.NET, trang ASP.NET đ-ợc chia thành hai phần

chính là phần giao tiếp và phần mã nguồn Tập tin ứng với phần mã giao tiếp

(khai báo thẻ HTML và điều khiển trình chủ) có tên mở rộng là aspx, trong khi đó tập tin chứa mã lệnh có tên aspx.cs hay aspx.vb (còn gọi là tập tin code -behind) Nếu nh- khi triển khai ứng dụng ASP 3.0 trên máy chủ (hosting), ta

Trang 11

tải những trang ASP vừa có mã giao tiếp và mã Visual Basic hay J++ thì khi triển khai ứng dụng ASP.NET, ta chỉ cần tải những trang aspx và tập tin dll

Đối với ASP.NET 2.0 ta có thể biên dịch từ trang ASP.NET thay vì biên dịch dự án nh- phiên bản ASP.NET 1.0 hay 1.1 Điều này có nghĩa là tr-ớc khi triển khai ứng dụng ASP.NET trên máy chủ, ta biên dịch ứng dụng ở chế

độ Release, tập tin dll tạo ra năm trong th- mục

Với cơ chế biên dịch nh- vậy, ta có thể che dấu phần mã viết trong tập

tin code-behind Bằng cách chép tất cả tập tin thuộc phần giao tiếp bao gồm những tập tin aspx, htm, css, js,… và thư mục Bin lên máy chủ thì ta có thể

triệu gọi trang aspx

Tuy nhiên, đối với ASP.NET 2.0 thì ta cần thực hiện chức năng Publish Website thay vì biên dịch bình th-ờng

 ASP.NET cho phép lập trình đa ngôn ngữ

Mặc dù ta phải chọn một trong ngôn ngữ lập trình là C#, J# hay Visual Basic khi tạo ra một ứng dụng Website, nh-ng tất cả mọi ứng dụng đ-ợc phát

triển từ một trong ba ngôn ngữ lập trình trên điều biên dịch ra tập tin

IL(Intermediate Language)

Khi thực thi ch-ơng trình, tập tin định dạng IL này đ-ợc biên dịch ra mã máy bằng CLR(Common Language Runtime), một phần chính của NETFrameWork Chẳng hạn, nếu ta có đoạn mã in ra chuỗi “Hello World” viết bằng ngôn ngữ lập trình C#

Namespace HelloWorld {

Public class TestClass {

Private static void Main(string[] args) {

Console.WriteLine(‚Hello World‛) }

} }

Cấu trúc mã định dạng IL của đoạn mã C# trên nh- sau:

Trang 12

12

.method public static void Main() cil Managed {

entrypoint .custom instance void [mscorlib]System.STAThreadAttribute::.ctor()=(01 00 00 00) //Code size 14 ()xe)

maxstack 8 IL_0000:nop IL_0001:ldstr ‚Hello World IL_006:call void

[mscorlib]System.Console:WriteLine(string) IL_000b:nop

IL_000c:nop IL_000d:ret }//end of method Module1::Main

 ASP.NET thực thi dựa trên CLR

Làm việc trên nền NETFrameWork, ch-ơng trình có mã viết bằng ngôn ngữ lập trình NET đ-ợc gọi là managed code, trong khi đó những ch-ơng trình viết bằng ngôn ngữ lập trình ngoài bộ NET sẽ đ-ợc gọi là unmanaged code ứng dụng ASP.NET 2.0 đ-ợc xây dựng dựa trên ngôn ngữ lập trình C# hay Visual Basic đ-ợc biên dịch ra tập tin định dạng IL và chạy với kênh thi hành là CLR

 ASP.NET là h-ớng đối t-ợng

ASP.NET cho phép khai báo phần mã trong cùng tập tin giao tiếp hoặc trong tập tin code-behind Tuy nhiên, khi làm việc với trang ASP.NET hầu nh-

ta sử dụng điều khiển trình chủ HTML, hay ASP.NET 2.0 Để truy cập vào các

điều khiển trình chủ này ta sử dụng ph-ơng thức, thuộc tính của các đối t-ợng t-ơng ứng

Trang 13

Chẳng hạn, ta khai báo hai đối t-ợng HTMLControl và WebControl nh-

sau:

<input id=‛Text1‛ runat=‛server‛ type=‛text‛/>

<ASP: TextBox ID=‛TextBox1‛

 ASP.NET tạo thành phần quan trong ứng dụng Portal

Một trong những đặc điểm mới của ASP.NET 2.0 là cho phép ta xây dựng một ứng dụng thành phần (WebPart) và tích hợp chúng trong ứng dụng Portal

Một trong những Portol nổi tiếng của hãng Microsoft là Microsoft SharePoint Portal Server

Nếu nh- ta sử dụng SharePoint Portal Server 2003 thì ta cần cài đặt Windows SharePoint Portal Server 2003 và các công cụ phát triển WebPart

Protected override void CreatChidContronl() {

Try {

Base.CreatChidContronl();

Table.table=newTable();

Table.BorderStyle=BorderStyle.Solid;

Table.BorderWidth=Unit.Pixel1();

TableRow tableRow=new TableRow();

TableCell tableCell=new TableCell();

TableCell,text=‛Hello Webpart‛;

TableRow.Cells.Add(tableCell);

Trang 14

14

Table.Rows.Add(tableRow);

This.Controls.Add(table);

} catch(Exception ex) {

Page.Response.Write(ex.Message);

} }

 ASP.NET là đa thiết bị và trình duyệt

Hầu hết trang ASP.NET 2.0 đều sử dụng các điều khiển trình chủ HTML và ASP.NET 2.0, khi ng-ời sử dụng triệu gọi trang aspx thì kết quả trả

về cho trình khác là thể HTML hay XHTML t-ơng ứng Tuy nhiên tùy thuộc vào trình duyệt mà ng-ời sử dụng dùng để triệu gọi trang ASP mà thẻ t-ơng ứng trả về cho thiết bị gọi là WML (Wireless Markup Language) Đối với ASP.NET 2.0 một số điều khiển trình chủ ASP.NET 2.0 có thể hỗ trợ cho ứng dụng triển khai trên thiết bị PDA và Mobile

 ASP.NET dễ triển khai và cấu hình

ứng với mỗi NETFramework ta có thể tìm thấy tập tin machine.config

cho phép ta cấu hình cho mọi ứng dụng ASP.NET trên máy chủ Tuy nhiên trong mỗi ứng dụng Website đều tồn tại tập tin Web.config, ta có thể khai báo trong tập tin này để cấu hình cho mọi ứng dụng Website thay vì phải sử dụng

đến trình điều khiển IIS

2.2 Những đặc điểm mới của ASP.NET 2.0

 Đối t-ợng Pages

Page (trang ứng dụng) sử dụng các thành phần điều khiển có khả năng hoạt động và t-ơng tác với nhau ngay trên trình chủ Web Server Với đặc điểm

này, chúng ta đã giảm thiểu quá trình viết mã t-ơng tác giữa các trang Lập

trình trong môi tr-ờng ASP.NET t-ơng tự nh- lập trình thiết kế trong NET Windows Forms Do đó các ứng dụng ASP.NET còn gọi là Web Forms

Trang 15

 HTML Server Side Controls

Các thành phần điều khiển HTML (HTMLControl) có khả năng xử lý

ngay trên trình chủ dựa vào thuộc tính và ph-ơng thức t-ơng tác các hoạt động

của chúng phía trình khách ( Sử dụng thuộc tính runat=‛server‛) Những thành phần điều khiển này còn cho phép kết hợp mã xử lý của trang ASP.NET

với một sự kiện nào đó phát sinh phía trình khách đ-ợc xem nh- đang diễn dịch trên trình chủ (mô hình chuyển giao)

 Rich Control

Rich Control là tập các thành phần điều khiển đa năng, chúng chạy trên

Server và có thể tạo ra các phần tử cũng nh- đối t-ợng HTML phức hợp cho trình khách Chẳng hạn, Rich Control tạo ra khung l-ới (datagrid), lịch (calendar), bảng (table), khung nhìn (list view) Rich Control còn cho phép

ràng buộc dữ liệu và xử lý dữ liệu t-ơng tự nh- ta đang viết một ứng dụng để

bàn Web Services (các dịch vụ Web)

Web Services có thể thay thế cho DLL, COM, DCOM tr-ớc đây Trang ASP.NET có thể không cần hiển thị kết xuất cho trình khách Chúng hoạt

động nh- những ch-ơng trình xử lý yêu cầu ở hậu cảnh Ví dụ nh- trong

ASP.NET của ta có thể là một lớp đối t-ợng cung cấp ph-ơng thức tự trả về

giá trị nào đó khi nhận đ-ợc yêu cầu từ trình khách

 Cấu hình và phân phối

Đơn giản và dễ dàng với các tập tin (Web.config) cấu hình theo định dạng văn bản XML Các thành phần đối t-ợng không còn phải đăng ký với hệ thống tr-ớc khi sử dụng nữa (không còn dùng đến regsvr 32.exe nh- đã sử dụng COM, DLL, DCOM) Ta chỉ cần copy các trang ASP.NET hay các đối

t-ợng lên máy chủ, chỉ ra vị trí của chúng Ch-ơng trình cũng nh- dịch vụ của

ta đã có thể sẵn sàng để sử dụng

 Trạng thái Session

Trang 16

Xử lý lỗi (debug) và lần vết (tracing) và các công cụ gỡ lỗi lần vết

thông tin đ-ợc nâng cấp và đáng tin cậy hơn Mỗi trang tài liệu có thể sử dụng một trang xử lý lỗi riêng biệt và kết xuất nội dung của biến để theo dõi ngay trong quá trình thực thi trang Các trình gỡ lỗi debug đ-ợc tích hợp sử dụng

cho môi tr-ờng đa ngôn ngữ Visual Basic, C++, C# Ta có thể tạo ra các thành phần đối t-ợng từ C++,C# và triệu gọi chúng bằng ngôn ngữ Visual Basic.NET theo cú pháp

 Quản lý bảo mật

Quản lý bảo mật (Security management), chúng ta có thể tận dụng các dịch vụ đăng nhập (login) tùy biến cho trang tài liệu ASP.NET theo phong cách của Web hoặc cơ chế đăng nhập và kiểm tra quyền xuất dựa trên hệ

thống bảo mật của hệ điều hành

 Tùy biến vùng đệm trên trình chủ

Bằng cách sử dụng tùy biến vùng đệm trên trình chủ (Custom Server Caching) của kiến trúc ASP.NET đ-ợc quản lý rất linh động Ta có thể tự tạo

các vùng đệm riêng chứa một kiểu giá trị và đối t-ợng trong quá trình hoạt

động của trang nhằm tăng tốc cho ứng dụng

 Một tập các đối t-ợng

ASP.NET hỗ trợ một tập phong phú các th- viện, lớp và đối t-ợng,

nhằm phục vụ cho hầu hết những gì mà các nhà phát triển ứng dụng cần đến

khi làm việc với ASP.NET Bằng các th- viện này, công việc viết ứng dụng cho Web trở nên dễ dàng và đơn giản hơn bao giờ hết Ví dụ nh- ta có thể sử dụng các thành phần đối tượng “Send Mail” để gửi nhận th-, đối t-ợng mã hóa và giải mã thông tin, đối t-ợng đếm số ng-ời truy nhập trang Web (Counter), đối t-ợng truy xuất dữ liệu ADO, đối t-ợng truy nhập các dịch vụ

Trang 17

mạng, đối t-ợng đọc ghi trên hệ thống NTFS, đối t-ợng ghi ra logfile của hệ

điều hành,…

Các đối t-ợng nội tại khác nhau nh-: Request, Response, Form, Cookies, Server Variables đều đ-ợc giữ lại và hoàn toàn t-ơng thích với ASP Tuy nhiên ASP.NET đã cung cấp thêm cho những đối t-ợng này rất nhiều

thuộc tính và ph-ơng thức mới giúp nâng cao khả năng xử lý cho ứng dụng

2.3 NET FrameWork và trang ASP.NET 2.3.1 Giới thiệu NET FrameWork

.NET FrameWork là cơ sở hạ tầng bằng việc cung cấp cho ng-ời dùng cách thức sử dụng đa ngôn ngữ lập trình để truy cập thông tin, file, hoặc các

ch-ơng trình của họ ở mọi lúc mọi nơi trên mọi cấu hình phần cứng và thiết

bị Tâm điểm của NET FrameWork là CLR (Comm Language Runtime) và tập phân cấp các bộ th- viện hợp nhất và ASP.NET CLR quản lý thực thi của

đoạn mã NET và cung cấp các dịch vụ tạo quá trình phát triển ch-ơng trình

ứng dụng dễ dàng hơn Các trình biên dịch và các công cụ làm cho cho năng

của th- viện thực thi runtime trở nên phong phú và hiệu quả hơn Ngoài ra, dịch vụ Web trong NET FrameWork cho phép ta phát triển ứng dụng Internet hay Intranet trong hiện tại lẫn t-ơng lai bằng bất cứ ngôn ngữ lập trình và truy cập đến hệ thống bất kỳ CLR cung cấp sự dễ dàng cho các nhà phát triển Visual Basic NET khi thiết kế và xây dựng ứng dụng mà những đối t-ợng

của chúng có thể t-ơng tác với các đối t-ợng đ-ợc viết bằng ngôn ngữ khác

Sự t-ơng tác này có thể bởi vì các trình biên dịch ngôn ngữ và các công cụ

phát triển h-ớng đến sử dụng CLR với một hệ thống kiểu dữ liệu chung định

nghĩa bởi th- viện runtime

Trang 18

18

Hỡnh 2-1: Kiến trỳc NETFrame

Ta có thể tham khảo tất cả những thành phần cấu thành trong

.NETFrameWork nh- hình 2-1, mức trên cùng là trình biên dịch Visual Basic hoặc các trình biên dịch của các ngôn ngữ khác trong bộ Visual Studio.NET trong hình 2-1, cũng cho biết ta có thể sử dụng Visual Studio NET kết hợp với môi tr-ờng phát triển (Intergrated Development Environmrnt - IDE) để lập trình ASP.NET, Visual Basic C++, C# …CLS – Common Language Specification Web Service User Interface Data and XML Base Class Library CLR - Common Language Runtime Visual Studio.NET NETFrameWork .NET FrameWork còn kết hợp mô hình đơn giản, dễ sử dụng với các giao thức

Trang 19

mở và biến đổi đ-ợc của Internet Để đạt đ-ợc điều này, NE FrameWork bao

gồm các đặc điểm sau:

Sự hợp nhất thông qua các chuẩn Internet và hỗ trợ các chuẩn Web

Service: Cho phép giao tiếp với mọi ứng dụng phát triển trên cơ sở hạ tầng bất

kỳ mà không cần biết đến chi tiết bên trong cơ sở hạ tầng đó thông qua định dạng XML bằng nghi thức SOAP (Simple Object Access Protocol).Khả năng biến đổi đ-ợc: Đa số các hệ thống lớn đang sử dụng trên thế giới đ-ợc xây

dựng trên kiến trúc không đồng bộ .NET FrameWork cho phép chúng ta xây

dựng có khả năng biến đổi và giao tiếp với nhau giữa các kiến trúc khác nhau

Hỗ trợ nhiều ngôn ngữ: Những nhóm lập trình sử dụng ngôn ngữ lập trình khác nhau để phát triển ứng dụng do chúng có những tính -u việt của

từng loại .NETFrameWork cho phép trao đổi và giao tiếp giữa các hệ thống

đ-ợc xây dựng trên các ngôn ngữ lập trình khác nhau Ngoài ra, chúng ta có thể sử dụng lại những ứng dụng đang tồn tại mà không cần phải xây dựng lại

từ đầu

Bảo mật tốt hơn: Bảo mật là một trong những vấn đề gây mất nhiều thời

gian của ng-ời làm tin học Kiến trúc bảo mật của NETFrameWork đ-ợc

thiết kế từ d-ới lên để đảm bảo các ứng dụng và dữ liệu đ-ợc bảo vệ tinh dựa trên mô hình evedencebase (bằng chứng)

Kế thừa những dịch vụ của hệ điều hành: NETFrameWork tận dụng lợi

thế đa dạng và phong phú của các thành phần trong hệ điều hành đang có để cung cấp cho ng-ời sử dụng theo cách thân thiện và dễ sử dụng hơn Tách biệt

giữa mã nguồn (code-behind) và thành phần là một phần quan trọng của NETFrameWork Ngoài ra, NET FrameWork biên dịch trang ASP.NET

thành tập tin DLL (Dynamic Link Library) khi đ-ợc gọi lần đầu nh- hình 2-2,

thay vì thông dịch chúng nh- từng thực hiện trong ASP 3.0

2.3.2 Biên dịch trang ASP.NET

Khi ng-ời sử dụng gọi trang ASPX lần đầu tiên, IIS triệu gọi trình biên dịch trang ASPX (trang code-behind) thành tập tin Class Kế tiếp, tập tin Class

Trang 20

20

này đ-ợc biên dịch thành tập tin DLL Sau đó, trang DLL thực thi và trả về kết

quả cho ng-ời sử dụng

Hình 2-2: Quá trình biên dịch trang ASP.NET

Trong tr-ờng hợp ng-ời sử dụng gọi lại trang ASPX lần kế tiếp, thì tập tin DLL sẽ đ-ợc gọi và thực thi để trả kết quả về cho ng-ời sử dụng Nh- vậy, trang ASPX sẽ biên dịch lại tập tin DLL khi chúng tìm thấy cấu trúc của nó thay đổi hoặc chúng không tìm thấy tập tin DLL t-ơng ứng trong th- mục có tên Temporary ASP.NET Files nh- hình 2-3

Respons RRRRRRRReRespo

ns

Respons Respons

Instantiate

Compile

ASPX Engine

Process and Render

Tập tin DLL

Tập tin ASPX

Tập Tin Class

Generat e

behind Class

Code-Reques

t Request

Instantiate

Trang 21

Tóm lại, khi ng-ời sử dụng truy cập trang ASPX vào lần đầu tiên th-ờng chậm., nh-ng nếu ng-ời sử dụng truy cập trang ASP.NET đó lần kế tiếp thì

quá trình này sẽ xảy ra nhanh chóng L-u ý rằng, ta có thể tìm thấy các tập tin

DLL đ-ợc biên dịch từ trang ASPX t-ơng ứng nh- hình 2-2 trong th- mục Temporary ASP.NET Files thuộc th- mục Microsoft.NET

2.3.3 Các đối t-ợng ASP.NET

1 Đối t-ợng Request

T-ơng tự nh- đối t-ợng Session, đối t-ợng Request đ-ợc cài đặt trong lớp HttpReques thuộc không gian tên System.Web Tất cả thuộc tính và ph-ơng thức đang tồn tại trong ASP đều đ-ợc hỗ trợ trên ASP.NET T-ơng tự nh- trong đối t-ợng Session, cấu trúc của đối t-ợng Request có một vài thay

đổi cùng với một số thuộc tính và ph-ơng thức mới Thuộc tính và ph-ơng

thức của Request thể hiện trong bảng sau:

ph-ơng thức

Diễn giải

1 Filepath FilePa filepath trả về đ-ờng dẫn ảo của yêu

cầu, thuộc tính n này t-ơng đ-ơng với

SCRIPT-NAME trong ASP

2 Files Trả về HttpFileCollection của tập tin nhiều

tập tin đ-ợc tải lên Server (sử dụng cho dạng multi-part/forms)

3 Form Trả về một tập dữ liệu của nội dung từ Form

(NameValueCollection) Cách truy cập tập

dữ liệu này khác với truy cập tập dữ liệu từ

Form của ASP

4 Params Params nh- trình bày trong ch-ơng tr-ớc,

thuộc tính này sử dụng để lấy giá trị của

ph-ơng thức trong Form, QueryString, ServerVariable hay Cookie QueryString,

Trang 22

22

ServerVariable hay Cookie

5 Path Path đ-ờng dẫn ảo của yêu cầu, t-ơng đ-ơng

với PATH_INFO trong ASP

6 PathInfo Đ-ờng dẫn ảo của yêu cầu, t-ơng đ-ơng với

PATH_INFO trong ASP

7 PhysicalApplicationPath Đ-ờng dẫn vật lý của th- mục gốc, t-ơng

đ-ơng với APPL_PHYSICAL_PATH

8 PhysicalPath Đ-ờng dẫn vật lý của yêu cầu, t-ơng đ-ơng

với PATH_TRANSLATED trong ASP

9 QueryString Trả về một tập dữ liệu của nội dung từ

QueryString (NameValueCollection)

Cách truy cập tập dữ liệu này khác với truy

cập tập dữ liệu từ Form của ASP Tham khảo Request Collection trong phần kế tiếp

10 TotalBytes Dung l-ợng của Stream trong luồng dữ liệu

11 Url Đối t-ợng Url chứa đựng chi tiết của yêu cầu Đối t-ợng Url (từ không gian tên System) bao

gồm các thông tin chi tiết nh- Port, DNS,…

12 UserHostAddress Địa chỉ IP của ng-ời sử dụng, t-ơng đ-ơng với REMOTE_ADDR trong ASP

13 UserHostName Tên DNS của ng-ời sử dụng, t-ơng đ-ơng với REMOTE_NAME trong ASP

14 MapPath Chuyển đổi đ-ờng dẫn ảo thành đ-ờng dẫn vật lý

Trang 23

2 Request Collection trong ASP

Đối t-ợng Request cho phép truy cập đến nội dung của Form hay QueryString

3 Đối t-ợng Respone

T-ơng tự nh- hai đối t-ợng đã trình bày ở trên, tất cả các thuộc tính và

ph-ơng thức tr-ợc đây của đối t-ợng Response đều đ-ợc sử dụng lại tuy nhiên, khi sử dụng đối t-ợng Response trong ASP.NET, ta cần quan tâm một

số thuộc tính và ph-ơng thức mới L-u ý rằng, trong ASP ta khai báo đối t-ợng Response.Write nh- sau:

Response.Write Str Trong ASP.NET, phát biểu trên đ-ợc viết lại nh- sau:

Response.Write (Str)

Ta có thể tham khảo chi tiết về đối t-ợng Response trong ASP 3.0 Bảng

2-4 sau sẽ trình bày một số thuộc tính, ph-ơng thức mới và thuộc tinh, ph-ơng

thức thay đổi trong ASP.NET thuộc tính và ph-ơng thức của Response đ-ợc

trình bày trong bảng sau:

2 Redirect Chuyển h-ớng địa chỉ file trong cùng ứng

dụng hay URL khác trong lúc thi hành

3 Write Ghi thông tin từ các kiểu dữ liệu nh- Char,

Object, String, Array ra trang Web

4 WriteFile Ghi một luồng dữ liệu ra tập tin chỉ định

Trang 24

24

4 Đối t-ợng Application

Trong ASP, chúng ta sử dụng đối t-ợng Application để trao đổi thông tin

giữa các phiên làm việc của các trình duyệt đối với trình chủ Ví dụ trong

tr-ờng hợp ta muốn sử dụng biến Counter đếm số lần truy cập trang ASP của

mọi trình duyệt Biến này phải có hiệu lực trên toàn ứng dụng Khi đó, mọi trình duyệt đều có thể l-u trữ và truy cập đến biến này

Đối t-ợng Application trong ASP.NET đ-ợc cài đặt trong lớp HttpApplicationState thuộc không gian tên System.Web Mặc dù, ASP.NET hỗ trợ hầu hết các choc năng của ASP bằng hai Contents và StaticObjects Collection, nh-ng chúng cũng có một số khác nhau mà chúng ta cần tìm hiểu

Chẳng hạn, hai phat biểu nh- sau là t-ơng đ-ơng

Application.Contents.Remove(‚Counter‛) Application.Remove(‚Counter‛)

Ngoài ra, đối t-ợng này có một số thuộc tính và ph-ơng thức mới nh- trình bày trong bảng:

1 AllKeys Trả về một mảng dạng chuỗi chứa đựng tên

của các phần tử trựng thái ứng dụng

2 Count Trả về số phần tử trong ứng dụng

3 Add Thêm phần tử váo ứng dụng

4 Clear Xóa tất cả các phần tử trong ứng dụng

5 Get Trả vè một phần tử chỉ định

6 GetKey Trả về khóa của phần tử chỉ định

7 Set Cập nhật giá trị của phần tử trong ứng

dụng

Trang 25

5 Đối t-ợng Secssion

Đối t-ợng Session đ-ợc cài đặt trong lớp HttpSessionState thuộc không gian tên System.Web.SessionState Hai thuộc tính Concent và StaticObjects t-ơng tự nh- trong đối t-ợng Application Cấu trúc của đối t-ợng này khác với cấu trúc trong ASP, nh-ng chúng làm việc t-ơng tự nh- ta dã khai báo và sử dụng đối t-ợng Session trong ASP Chẳng hạn hai phát biểu sau đây có tác

dụng nh- nhau:

Session.Remove(‚Counter‛) Session.Contents.Remove(‚Counter‛) Thuộc tính và ph-ơng thức của Sission:

1 Count Trả về số phần tử trong Session (phiên làm việc)

2 Clear Xóa tất cả các phần tử trong Session

3 SessionID Trả về một giá trị là chuỗi mà trình chủ cấp cho

Session (trong ASP giá trị này là một Long)

4

Remove Trong ASP, ta có thể xóa một Session bằng cách

cung cấp chỉ mục của Session hay tên của Session Đối với ASP.NET ta có thể xóa Session

bằng cách chỉ định tên Trong tr-ờng hợp ta

muốn xóa một phần tử trong Session theo chỉ mục, ta phải sử dụng ph-ơng thức RemoveAt(i)

5

RemoveAt Khi ta muốn xóa một phần tử trong Session theo

chỉ mục, ta phải sử dụng ph-ơng thức

RemoveAt(i)

Trang 26

26

2.4 Cấu hình trang ASP.NET

Cấu hình trang (Page Configuration) cho phép chúng ta kiểm soát một

số mặc định của Session trong trang ASP.NET Chẳng hạn nh- khai báo trong

 EnableSessionState: Mặc định cho phép sử dụng Session trong ứng

dụng ASP.NET Tuy nhiên, ta cũng có thể vô hiệu hóa thuộc tính này, trong ứng dụng ta không thể khai báo và sử dụng Session

 EnableViewState: Cho phép l-u lại Server Control trên Client bằng thẻ

Ngày đăng: 22/08/2023, 00:56

HÌNH ẢNH LIÊN QUAN

Hình 2-1: Kiến trúc .NETFrame - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 2 1: Kiến trúc .NETFrame (Trang 18)
Hình 2-2: Quá trình biên dịch trang ASP.NET - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 2 2: Quá trình biên dịch trang ASP.NET (Trang 20)
Ta có thể tham khảo chi tiết về đối t-ợng Response trong ASP 3.0. Bảng  2-4 sau sẽ trình bày một số thuộc tính, ph-ơng thức mới và thuộc tinh, ph-ơng  thức thay đổi trong  ASP.NET - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
a có thể tham khảo chi tiết về đối t-ợng Response trong ASP 3.0. Bảng 2-4 sau sẽ trình bày một số thuộc tính, ph-ơng thức mới và thuộc tinh, ph-ơng thức thay đổi trong ASP.NET (Trang 23)
Hình 1. Thứ tự phát sinh các sự kiện - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 1. Thứ tự phát sinh các sự kiện (Trang 28)
Hình 1: Hình minh họa trang chủ - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 1 Hình minh họa trang chủ (Trang 44)
Hình 2: Hình minh họa các thông tin chi tiết - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 2 Hình minh họa các thông tin chi tiết (Trang 45)
Hình 3: Hình minh họa chức năng tìm phòng - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 3 Hình minh họa chức năng tìm phòng (Trang 46)
Hình 4: Trang Web tr-ờng Đại học Vinh - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 4 Trang Web tr-ờng Đại học Vinh (Trang 47)
Hình 5: Trang giới thiệu về trang Web - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 5 Trang giới thiệu về trang Web (Trang 48)
Hình 6: Hình minh họa về chức năng đăng ký - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 6 Hình minh họa về chức năng đăng ký (Trang 49)
Hình 7: Hình minh họa các thao tác sau khi đăng nhập - Tìm hiểu asp net và xây dựng website phòng trọ sinh viên
Hình 7 Hình minh họa các thao tác sau khi đăng nhập (Trang 50)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w