Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Trờng đại học vinh
Khoa c«ng nghƯ th«ng tin
------------
đồ án tốt nghiệp
Đề tài
Tìm hiểu công nghệ ASP .net và xây dựng
website khoa kü tht c«ng nghƯ
Trờng đại học hà tĩnh
Giáo viên hớng dẫn: TS. Lê Anh Ngọc
Sinh viên thực hiƯn : Phan ChiÕn Th¾ng
Líp : 46E2 - CNTT
Vinh, 05/2010
SVTH: Phan Chiến Thắng 1 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
MỤC LỤC
LỜI NÓI ĐẦU………………………………………...………….….………………5
CHƯƠNG I .TỔNG QUAN VỀ ĐỀ TÀI…………………………….……………...6
1.1. Lí do chọn đề tài……………………… … …………….……….…………....6
1.2. Phạm vi đề tài………………………………………….…..……….….….…...6
1.3. Yêu cầu của người sử dụng Website Cổng thông tin trực tuyến……..………..6
1.4. Yêu cầu bên phía quản trị Website…………..………..……………………… 7
1.5. Mơ tả bài tốn……………………………….………..…………….………….7
1.5.1. Mơ tả……………………………………………..……….…………..……7
1.5.2. u cầu hệ thống………………………..………………….….…….……..8
1.5.2.1 Đối với Quản trị Website………………...……………….……………8
1.5.2.2 Đối với người sử dụng…………………………………….…...………8
1.5.2.3 Đối với Sinh viên…………………………… ……………....…...……8
1.6 Mục tiêu đề ra……………………….…….…………………………….…….8
CHƯƠNG II .GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH ASP.NET….………….......9
2.1 Giới thiệu cơng nghệ ASP.NET……………………….……………….……. 9
2.1.1. Công nghệ .Net (Dot net)………………………….…………….………..9
2.1.3 Sự khác nhau giữa Website tĩnh và Website động ….….……….….……10
2.1.3 Giới thiệu ngôn ngữ lập trình ASP.NET……………....…………....……11
2.1.3.1 Tìm hiểu về ASP.Net……………………..………….……….………11
2.1.3.2 Những ưu điểm của ASP.Net……………………………………….. 12
2.2 Giới thiệu Hệ quản trị cơ sở dữ liệu SQL Server 2005……………...……….13
2.2.1 Các tính năng cao cấp của SQL Server 2005………………….…………15
CHƯƠNG III. PHÂN TÍCH HỆ THỐNG………………………………….....……21
SVTH: Phan Chiến Thắng 2 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
3.1. Phân tích hệ thống về chức năng……………..………….…………….……21
3.1.2. Biểu đồ phân cấp chức năng……………………………………………21
3.1.3. Biểu đồ luồng dữ liệu mức khung cảnh……………………….………..22
3.1.4. Biểu đồ luồng dữ liệu mức đỉnh…………………...………….………..23
3.1.4.1. Phân rã chức năng Quản lý Nội dung……………………………...23
3.1.4.2. Phân rã chức năng Quản lý Liên hệ…………………….………….24
3.1.4.3. Phân rã chức năng Quản lý Sinh viên…………………….………..25
3.1.4.4. Phân rã chức năng Quản lý Khoa………………………….……….26
3.1.5. Biểu đồ luồng dữ liệu mức dưới đỉnh………………………………….27
3.1.5.1 Phân rã chức năng quản lý Nội dung…………………….…………27
3.1.5.2 Phân rã chức năng quản lý liên hệ………………………..…………28
3.1.5.3 Phân rã chức năng quản lý Sinh viên………………….……………29
3.1.5.4 Phân rã chức năng quản lý Khoa…………………….……….……..30
3.2. Phân tích hệ thống về dữ liệu…………………………….…...…...……….31
3.2.1 Thiết kế các bảng dữ liệu…………………….………….……..……….31
3.2.1.1 Bảng lưu trữ dữ liệu TblCategory……………….………………….31
3.2.1.2 Bảng lưu trữ dữ liệu TblSubCategory……………………….….…..31
3.2.1.3 Bảng lưu trữ dữ liệu TblArticle………………………….……….…32
3.2.1.4 Bảng lưu trữ dữ liệu TblTeacher………………………….………...32
3.2.1.5 Bảng lưu trữ dữ liệu TblStudent………………………….…………33
3.2.1.6 Bảng lưu trữ dữ liệu TblClass…………………………..…………...33
3.2.1.7 Bảng lưu trữ dữ liệu TblContacts……………………….…...……….34
3.2.1.8 Bảng lưu trữ dữ liệu TblMessage………...……………....…………..34
3.2.1.9 Bảng lưu trữ dữ liệu TblGallery……………………….…..…………35
3.2.1.10 Bảng lưu trữ dữ liệu TblTeam………………………….…...………35
SVTH: Phan Chiến Thắng 3 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
3.3 Sơ đồ Website……………………………….………….………….……….36
3.4. Các thực thể : ………………………………..…………………….……….37
3.5. Sơ đồ liên kết thực thể………………………….......................……………40
CHƯƠNG IV . THIẾT KẾ……………………………………….………………...42
A. GIAO DIỆN QUẢN TRỊ ………………………..……….…………………..42
4.1 Giao diện chính………………………………………………….………...42
4.2 Giao diện Chuyên mục chính……………………………..….……………42
4.3 Giao diện Chuyên mục con………………………………………………..44
4.4 Giao diện cập nhật chuyên mục…………………………….….……..……44
4.5 Giao diện bài viết……………………………………………..……………45
4.6 Giao diện cập nhật bài viết……………………………….…………….….46
4.7 Giao diện liên hệ………………………………………………..………….47
4.8Giao diện lớp……………………………………………….………………47
4.9 Giao diện Sinh viên…………………………………………....…….…….48
4.10 Giao diện tổ bộ môn……………………………………….……..………49
4.11 Giao diện quản lý hình ảnh………………………………….…….……...49
4.12 Giao diện cập nhật giáo viên………………………………….………….50
B.GIAO DIỆN NGƯỜI DÙNG………………………………………………….51
4.13 Giao diện Trang chủ……………………………………………………...51
4.14 Giao diện giới thiệu………………………………………………………52
4.15 Giao diện liên hệ………………………………………………………….52
CHƯƠNG V. TỔNG KẾT……………………………………………….…..……..53
5.1. Những việc đã làm được…………………………..………….…………53
5.2. Những việc chưa làm được ………………………..…………...……….53
5.3. Hướng phát triển………………………………………………...………54
SVTH: Phan Chiến Thắng 4 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
LỜI CẢM ƠN
Trong quá trình làm đề tài này, em đã nhận được nhiều sự giúp đỡ để có thể
hồn thành được đề tài.
Em xin gửi lời cảm ơn đến các thầy cô trong khoa Công nghệ thông tin trường
đại học Vinh đã giúp đỡ em trong quá trình học cũng như thực hiện đề tài.
Đặc biệt, em xin chân thành cảm ơn thầy giáo TS. Lê Anh Ngọc người đã tận
tình hướng dẫn, chỉ bảo trong suốt quá trình thực hiện đề tài cũng như thực hiện báo
cáo này.
SVTH: Phan Chiến Thắng 5 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
LỜI NĨI ĐẦU
Cơng nghệ thông tin là một trong những ngành mũi nhọn của đất nước. Hàng
năm nguồn nhân lực Công nghệ thông tin đào tạo ra luôn đáp ứng được số lượng lớn
các yêu cầu của xã hội về nhiều mặt như : Kinh tế, văn hóa, xã hội. Do đó, việc ứng
dụng rộng rãi của ngành công nghệ thông tin trong xã hội là điều tất yếu.
Từ khi Internet ra đời, kéo theo đó là sự bùng nổ thông tin trên Internet, một
loạt các dịch vụ trên Internet đã khiến cuộc sống của con người trở nên thú vị hơn,
khoảng cách địa lý không cịn là vấn đề gây khó khăn. Những lợi ích mà Internet
mạng lại là rất lớn. Trong đó Website là một trong những dịch vụ phổ biến nhất trên
Internet hiện nay.
Trước tình hình đó tơi chọn đề tài xây dựng website, nhằm phục vụ nhu cầu
của những người có mong muốn tìm hiểu về khoa Kỹ thuật - công nghệ Trường Đại
học Hà Tĩnh
Tôi xin gửi lời cảm ơn chân thành đến thầy giáo hướng dẫn TS. Lê Anh Ngọc đã
giúp đỡ và hướng dẫn tơi hồn thành đề tài này.
Dù đã cố gắng nhưng không thể tránh sai sót tơi rất mong nhận được sự giúp
đỡ và đóng góp của các q thầy cơ, các anh chị cùng toàn thể các sinh viên.
SVTH: Phan Chiến Thắng 6 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Vinh, Tháng 05 Năm 2010.
CHƯƠNG I .
TỔNG QUAN VỀ ĐỀ TÀI
1.1. Lí do chọn đề tài
Với mong muốn tìm hiểu về các cơng cụ phát triển web trong giai đoạn hiện
nay của lĩnh vực CNTT, cụ thể là cơng cụ ASP.NET với mục đích xây dựng và thiết
kế các website. Thêm vào đó là quá trình thực tập tốt nghiệp tại trường Đại học Hà
Tĩnh. Chính vì thế tơi chọn đề tài “ Tìm hiểu công nghệ ASP.NET và xây dựng
website khoa Kỹ thuật công nghệ trường Đại học Hà Tĩnh”.
1.2. Phạm vi đề tài
Vì bắt đầu làm quen với lập trình web nên đề tài cịn nhiều hạn chế chưa liên
kết được rộng rãi, chỉ nằm trong một phạm vi hẹp.
1.3. Yêu cầu của người sử dụng Website Cổng thông tin trực tuyến
Trong thời đại CNTT hiện nay, tin tức xã hội đóng một vai trị vô cùng quan
trọng. Bằng việc cung cấp kịp thời, nhanh chóng và chính xác các tin tức xảy ra
hàng ngày về nhiều lĩnh vực như : Xã hội, văn hóa, chính trị, pháp luật, thể thao..v..v
các cổng thơng tin điện tử đã thật sự trở thành nhu cầu thiết yếu của xã hội. Khơng
chỉ phục vụ nhu cầu tìm kiếm thơng tin mà cổng thơng tin điện tử cịn đem lại rất
SVTH: Phan Chiến Thắng 7 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
nhiều kiến thức bổ ích cho con người bằng việc chia sẻ kiến thức khổng lồ lên
Internet.
Đối với người sử dụng, để tìm kiếm được thơng tin có ích cho bản thân mình
thì địi hỏi Website phải đáp ứng được về mặt thẩm mỹ, giao diện dễ sử dụng, tin tức
đưa lên phải chính xác, kịp thời và đầy đủ cả về nội dung lẫn hình ảnh. Mặt khác,
tính tương tác hai mặt của Cổng thông tin điện tử phải được nâng cao nhằm thu thập
được nhiều ý kiến và nguyện vọng của người sử dụng về những nội dung, chủ đề mà
Website đưa ra
1.4. Yêu cầu bên phía quản trị Website
Cổng thơng tin điện tử địi hỏi độ chính xác cao trong mỗi bản tin đưa lên, vì
vậy yêu cầu đối với quản trị website là phải cung cấp công cụ đủ mạnh để quản lý
các bài viết, các chuyên mục và hình ảnh hiển thị trên website. Đồng thời, song song
với việc đảm bảo về nội dung, quản trị website còn cần phải đảm bảo sự an tồn cho
hệ thống bằng việc bảo mật thơng tin.
1.5. Mơ tả bài tốn
1.5.1. Mơ tả
Các chức năng của Website khoa Kỹ thuật công nghệ:
Quản lý các chuyên mục về các lĩnh vực và nội dung có trong mỗi
chuyên mục đó.
Cập nhật các tin tức lên Website.
Khi người dùng xem các bài viết cần phải có mục tìm kiếm để người
dùng dễ dàng tìm thấy nội dung cần tìm.
Hệ thống cho phép đăng các hình ảnh lên website và quản lý các hình
ảnh đó.
Quản lý các thông tin phản hồi, thông tin liên hệ của người dùng.
SVTH: Phan Chiến Thắng 8 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Trình bày tin tức hợp lý với các chuyên mục được sắp xếp logic
Quản lý thông tin về các tổ bộ môn
Quản lý thông tin các cán bộ
Quản lý thông tin các lớp học
Quản lý thông tin các sinh viên theo từng lớp
1.5.2. Yêu cầu hệ thống
1.5.2.1 Đối với Quản trị Website
1. Cập nhật các chuyên mục
2. Cập nhật bài viết
3. Cập nhật hình ảnh
4. Quản lý các thông tin phản hồi, liên hệ của khách hàng
5. Quản lý thông tin về tổ bộ môn, giáo viên
6. Quản lý thông tin về lớp học và sinh viên theo từng lớp
7. Cập nhật tin tức dành riêng cho các sinh viên
8. Tạo các tài khoản sinh viên cho phép đăng nhập để xem tin tức
1.5.2.2 Đối với người sử dụng
1. Xem các bài viết mới nhất được đăng trên Website
2. Tìm kiếm thông tin về một bài viết bất kỳ
3. Gửi phản hồi, liên hệ
1.5.2.3 Đối với Sinh viên
1. Xem các bài viết mới nhất được đăng trên Website
2. Tìm kiếm thông tin về một bài viết bất kỳ
3. Gửi phản hồi, liên hệ
SVTH: Phan Chiến Thắng 9 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
4. Đăng nhập để xem thông tin của khoa bằng tài khoản được cấp
1.6 Mục tiêu đề ra
Về mặt lý thuyết:
Nắm được cơ sở lý thuyết chung về xây dựng cổng thông tin điện tử
Hiểu rõ quy trình thiết kế một Cổng thơng tin điện tử
Về mặt ứng dụng:
Xây dựng Website Khoa Kỹ thuật công nghệ để cập nhật thông tin
thường xuyên của khoa, thông tin về các cán bộ giảng dạy, tin tức cho sinh viên..v.v.
Hoàn thiện Website và đưa vào sử dụng
CHƯƠNG II .
GIỚI THIỆU CƠNG NGHỆ ASP.NET
2.1 Giới thiệu cơng nghệ ASP.NET
2.1.1. Cơng nghệ .Net (Dot net)
Cấu trúc .Net Framework:
Net Framework là nền tảng cung cấp các tiện nghi cho việc xây dựng và chạy
các ứng dụng. Các thành phần chính: CLR (common language runtime), FCL (.Net
Framework Class Library).
Trong đó: CLR trừu tượng hóa các dịch vụ của hệ điều hành đóng vai trị thực
thi các ứng dụng mà nó quản lý. FCL cung cấp API hướng đối tượng để viết các ứng
dụng .Net bằng FCL thay vì Window API, MFC, ATL, COM, v.v…
Managed module:
Khi xây dựng ứng dụng với trình biên dịch sản sinh mã CIL, nó sẽ tạo ra các
managed module. Đó là các file thực thi được thiết kế để chạy trong CLR. Thơng
thường chúng có phần mở rộng là .EXE, .DLL hoặc NETMODULE.
Bên trong một managed module có 4 yếu tố quan trọng:
+ Một header của file thực thi trên Windows;
SVTH: Phan Chiến Thắng 10 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
+ Một CLR header chứa các thông tin quan trọng về module như version
của CLR, cờ điều khiển, tài nguyên sử dụng, vị trí kích thước của metadata.
+ Metadata mơ tả mọi thứ bên trong module và các phần phụ thuộc bên
ngoài: các kiểu dữ liệu, các hàm, các object được định nghĩa trong code và các
tài nguyên DLL, COM hay managed module khác được tham chiếu đến.
+ Các chỉ lệnh IL (Intermediate Language) được sản sinh từ mã nguồn sau
khi chúng ta biên dịch mã nguồn. IL sau đó sẽ được CLR biên dịch một lần
nữa ra mã máy (mã Assembly).
Mỗi managed module chứa siêu dữ liệu (metadata) mô tả nội dung module.
Mọi trình biên dịch tương thích CLR đều tạo ra metadata trong module.
Metadata:
Metadata của một module được lưu trong một tập các bảng: bảng chứa các
phương thức được thừa kế bởi các kiểu này, bảng liệt kê các trường, bảng liệt kê các
thuộc tính, v.v.. Một số bảng liệt kê các tham chiếu đến các kiểu dữ liệu bên ngoài
module, các assembly chứa các kiểu dữ liệu bên ngồi, v.v..
Các thơng tin metadata phụ được lưu trữ bên ngoài các bảng trong vùng heap
chứa các mục tham chiếu bởi các thực thể bảng.
Common Intermediate Language (CIL):
CIL thường được mô tả như một ngôn ngữ mô phỏng assembly bởi nó định
nghĩa một tập hợp các chỉ lệnh trung gian cho bộ xử lý CLR.
CIL có khoảng 100 chỉ lệnh, đóng vai trị trung gian giữa các ngơn ngữ C#,
VB.Net, Visual C++, J#, … Các managed module là kết quả của việc biên dịch từ
các ngôn ngữ này sang CIL. .Net có sẵn cơng cụ ILDASM để trình bày cho người sử
dụng nội dung của một module dạng CIL.
Assembly:
SVTH: Phan Chiến Thắng 11 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Assembly là tập hợp một hoặc nhiều file được nhóm với nhau để hình thành
một đơn vị về logic và các file phải nằm trong cùng một thư mục.
Các assembly còn được dùng để phân chia ứng dụng thành các phần rời rạc để
tiện download.
2.1.2 Sự khác nhau giữa Website tĩnh và Website động
Website tĩnh là: Website tĩnh thường bị nhầm lẫn với website khơng có những
hình ảnh động thay đổi, thực chất website tĩnh là những trang văn bản (có thể bao
gồm cả hình ảnh và âm thanh) được gắn kết với nhau có hệ thống.
Khuyết điểm:
Thay đổi thơng tin khó khăn (mất nhiều thời gian và địi hỏi có một số kỹ
năng sử dụng html, phần mềm ftp). Do khơng có mã lệnh lập trình vì vậy việc cập
nhật, thay đổi nội dung thơng tin của website mang nặng tính thủ cơng nên cần nhiều
thời gian.
Số lượng các trang thông tin theo lý thuyết là không giới hạn nhưng với số
trang càng lớn càng tốn nhiều thời gian chẳng hạn cần thêm một trang thơng tin thì
phải sửa tất cả những trang còn lại.
Website động là: website động có nghĩa là một website tĩnh được "ghép" với
một phần mềm web (các modules ứng dụng cho Web). Với chương trình phần mềm
này, người chủ website thực sự có quyền điều hành nó, chỉnh sửa và cập nhật thơng
tin trên website của mình mà không cần phải nhờ đến những người chuyên nghiệp
Ưu điểm:
Người quản trị dễ dàng thay đổi cập nhật thông tin bất cứ lúc nào một cách
đơn giản gần như tất cả những người dùng Iternet đều có thể làm được.
SVTH: Phan Chiến Thắng 12 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Có thực hiện những vấn đề phức tạp có thể là tính hóa đơn, quản lý đơn hàng,
thanh tốn online, so sánh, tìm kiếm sản phẩm theo yêu cầu cụ thể ...
Số lượng các trang phụ thuộc vào số lượng thông tin mà khách hàng cập nhật
các trang này sẽ tự động phát sinh theo các mục tương ứng và có liên kết với nhau.
2.1.3 Giới thiệu ngơn ngữ lập trình ASP.NET
2.1.3.1 Tìm hiểu về ASP.Net.
Từ khoảng cuối thập niên 90, ASP (Active Server Page) đã được nhiều lập
trình viên lựa chọn để xây dựng và phát triển ứng dụng web động trên máy chủ sử
dụng hệ điều hành Windows. ASP đã thể hiện được những ưu điểm của mình với mơ
hình lập trình thủ tục đơn giản, sử dụng hiệu quảcác đối tượng COM: ADO
(ActiveX Data Object) - xử lý dữ liệu, FSO (File System Object) - làm việc với hệ
thống tập tin…, đồng thời, ASP cũng hỗ trợ nhiều ngơn ngữ: VBScript, JavaScript.
Chínhnhững ưu điểm đó, ASP đã được yêu thích trong một thời gian dài.Tuy nhiên,
ASP vẫn cịn tồn đọng một số khó khăn như Code ASP và HTML lẫn lộn, điều này
làm cho quá trình viết code khó khăn, thể hiện và trình bày code khơng trong sáng,
hạn chế khả năng sử dụng lại code. Bên cạnh đó, khi triển khai cài đặt, do khơng
được biên dịch trước nên dễ bị mất source code, hạn chế về mặt tốc độ thực hiện.
Quá trình xử lý Postback khó khăn, …
Đầu năm 2002, Microsoft giới thiệu một kỹ thuật lập trình Web khá mới mẻ
với tên gọi ban đầu là ASP+, tên chính thức sau này là ASP.Net. Với ASP.Net,
khơng những khơng cần địi hỏi người dùng phải biết các tag HTML, thiết kế web,
mà nó cịn hỗ trợ mạnh lập trình hướng đối tượng trong quá trình xây dựng và phát
triển ứng dụng Web. ASP.Net là kỹ thuật lập trình và phát triển ứng dụng web ở
phía Server (Server-side) dựa trên nền tảng của Microsoft .Net Framework. Hầu hết,
những người mới đến với lập trình web đều bắt đầu tìm hiểu những kỹ thuật ở phía
SVTH: Phan Chiến Thắng 13 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Client(Client-side) như: HTML, Java Script, CSS (Cascading Style Sheets). Khi
Web browser yêu cầu một trang web (trang web sử dụng kỹ thuật client-side), Web
server tìm trang web mà Client yêu cầu, sau đó gởi về cho Client. Client nhận kết
quả trả về từ Server và hiển thị lên màn hình. ASP.Net sử dụng kỹ thuật lập trình ở
phía server thì hồn tồn khác, mã lệnh ở phía server (ví dụ:mã lệnh trong trang
ASP, ASP.NET) sẽ được biên dịch và thi hành tại Web Server. Sau khi được Server
đọc,biên dịch và thi hành, kết quả tự động được chuyển sang HTML/JavaScript/CSS
và trả về cho Client. Tất cả các xử lý lệnh ASP, ASP.Net đều được thực hiện tại
Server và do đó, gọi là kỹ thuật lập trình ở phía server.
2.1.3.2 Những ưu điểm của ASP.Net
ASP.Net cho phép người dùng lựa chọn một trong các ngơn ngữ lập trình mà
bạn yêu thích: Visual Basic.Net, J#, C#,…
Trang ASP.Net được biên dịch trước thành những tập tin DLL mà Server có
thể thi hành nhanh chóng và hiệu quả. Yếu tố này là một bước nhảy vọt đáng
kể so với kỹ thuật thông dịch của ASP.
ASP.Net hỗ trợ mạnh mẽ bộ thư viện phong phú và đa dạng của .Net
Framework, làm việc với XML, Web Service, truy cập cơ sở dữ liệu qua
ADO.Net, …
ASPX và ASP có thể cùng hoạt động trong 1 ứng dụng.
ASP.Net sử dụng phong cách lập trình mới: Code behide. Tách code riêng,
giao diện riêng
Dễ đọc, dễ quản lý và bảo trì.
Kiến trúc lập trình giống ứng dụng trên Windows.
Hỗ trợ quản lý trạng thái của các control
SVTH: Phan Chiến Thắng 14 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Tự động phát sinh mã HTML cho các Server control tương ứng với từng loại
Browser
Triển khai cài đặt
Không cần lock, không cần đăng ký DLL
Cho phép nhiều hình thức cấu hình ứng dụng
Hỗ trợ quản lý ứng dụng ở mức toàn cục
Global.aspx có nhiều sự kiện hơnBài Giảng Mơn Lập Trình Website ASP.Net
Quản lý session trên nhiều Server, không cần Cookies
2.2 Giới thiệu Hệ quản trị cơ sở dữ liệu SQL Server 2005
Hệ quản trị cơ sở dữ liệu là phần mềm cho phép định nghĩa, khởi tạo, bảo trì
cơ sở dữ liệu và cung cấp các truy xuất điều khiển đến dữ liệu.
Hệ quản trị cơ sở dữ liệu quan hệ là hệ quản trị dữ liệu dựa trên mơ hình dữ
liệu quan hệ.
Microsoft SQL Server 2005 là công cụ thiết kế và xây dựng cơ sở dữ liệu có
tính thực thi cao, được trải nghiệm qua nhiều phiên bản nhằm đem lại sự tối ưu.
Những người phát triển ứng dụng, những người quản lý cơ sở dữ liệu, những nhà
phân tích và thiết kế hệ thống và tất cả những ai quan tâm đến việc thiết kế, phát
triển, bảo lưu và quản lý các trình ứng dụng đều có thể sử dụng cơng cụ này.
Sử dụng SQL Sever giúp chúng ta có thể thao tác với cơ sở dữ liệu, chèn, xoá,
cập nhật thêm những bản ghi vào CSDL.
Các thành phần quan trọng của SQL Server 2005
- Relational Database Engine: - Cái lõi của SQL Server
SVTH: Phan Chiến Thắng 15 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Ðây là engine có khả năng chứa data với các quy mô khác nhau dưới dạng
table và hỗ trợ tất cả các kiểu kết nối dữ liệu thông dụng của Microsoft ActiveX
Data Objects - ADO, Open Database Connectivity - ODBC,….
- Replication - Cơ chế tạo bản sao (Replicate)
Cơ chế Replication của SQL Server sẽ bảo đảm cho dữ liệu ở 2 database được
đồng bộ (synchronized).
- Data Transformation Service (DTS) - chuyển dịch dữ liệu hiệu quả.
Giúp di chuyển dữ liệu giữa các server hiệu quả và định dạng trước khi lưu
vào database khác, khi đó ta sẽ thấy DTS giúp giải quyết công việc một cách dễ
dàng.
- Analysis Service - dịch vụ phân tích dữ liệu của Microsoft.
- SQL Server Tools - một công cụ của người quản trị cơ sở dữ liệu.
Các cơng cụ đó bao gồm:
Enterprise Manager
Query Analyzer
SQL profiler
2.2.1 Các tính năng cao cấp của SQL Server 2005
Tính năng 1. Nâng cao bảo mật:
Bảo mật là trong tâm chính cho những tính năng mới trong SQL Server 2005.
Điều này phản ánh sự phản ứng lại của Microsoft với sâu máy tính Slammer đã tấn
cơng SQL Server 2000. Nó cũng cho thấy một thế giới ngày càng có nhiều dữ liệu
kinh doanh có nguy cơ bị lộ ra ngồi Internet.
a, Bảo mật nhóm thư mục hệ thống:
Nhóm mục hệ thống bao gồm các View bên dưới cấu trúc dữ liệu hệ thống.
SVTH: Phan Chiến Thắng 16 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
Người sử dụng không thấy được bất cứ bảng bên dưới nào, vì thế những người dùng
khơng có kỹ năng hoặc có ý phá hoại khơng thể thay đổi hoặc làm hư hỏng các bảng
này được. Điều này ngăn bạn hoặc bất kỳ ai khác làm hỏng cấu trúc chính mà SQL
Server phụ thuộc vào.
b, Bắt buộc chính sách mật khẩu:
Khi người dùng cài Window Server 2003, người có thể áp dụng chính sách
mật khẩu của Window (người dùng đang áp dụng) cho SQL Server 2005. Người
dùng có thể thi hành chính sách về mức độ và ngày hết hạn của mật khẩu trên SQL
Server 2005 giống hệt như cho tài khoản đăng nhập vào Windows mà trong 2000
khơng hỗ trợ tính năng này. Người dùng có thể tắt hoặc mở việc bắt buộc chính sách
mật khẩu cho từng đăng nhập riêng.
c, Tách biệt giản đồ và người dùng:
SQL Server 2000 khơng có khái niệm giản đồ (Schema): Người dùng sở hữu
các đối tượng CSDL. Nếu một người dùng User1 tạo một đối tượng là myTable thì
tên của đối tượng sẽ là User1.myTable. Nếu User1 bị xóa khi một nhân viên rời khỏi
công ty chẳng hạn, người dùng cần thay đổi tên của đối tượng. Việc này gây ra vấn
đề với những ứng dụng phụ thuộc vào tên của đối tượng để truy xuất dữ liệu.
Trong SQL Server 2005, người dùng có thể tạo giản đồ có tên khác với người
dùng để chứa các đối tượng CSDL. Ví dụ User1 có thể tạo giản đồ có tên là HR và
tạo một đối tượng Employee. Người dùng tham chiếu đến đối tượng đó như là
HR.Employee. Vì thế nếu User1 rời khỏi công ty, người dùng không cần thay đổi
tên giản đồ, nghĩa là mã ứng dụng vẫn được giữ nguyên bởi vì đối tượng vẫn được
gọi là HR.Employee.
d, Tự động tạo chứng nhận cho SSL:
Trong SQL Server 2000, khi người dùng dùng Secure Sockets Layer (SSL) để
SVTH: Phan Chiến Thắng 17 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
đăng nhập vào thể hiện SQL Server, người dùng phải tạo chứng nhận để làm cơ sở
sử dụng SSL. SQL Server 2005 tự tạo chứng nhận cho người dùng, điều đó cho phép
người dùng sử dụng SSL.
Tính năng 2. Mở rộng T-SQL:
Transact - SQL là một phiên bản của Structured Query Language (SQl), được
dùng bởi SQL Server 2005. Transact-SQL thường được gọi là T-SQL. T-SQL có
nhiều tính năng do Microsoft phát triển khơng có trong ANSI SQL (SQL chuẩn).
Cải tiến khả năng hỗ trợ XML: SQL Server 2000 cho phép người dùng nhận
dữ liệu quan hệ ở dạng XML với mệnh đề FOR XML, hoặc lưu trữ XML như dữ
liệu quan hệ trong SQL Server sử dụng mệnh đề OPEN XML. SQL Server 2005 có
thêm một kiểu dữ liệu mới là XML cho phép người dùng viết mã nhận dữ liệu XML
như là XML, tránh việc biến đổi từ XML thành dữ liệu quan hệ khi dùng OPEN
XML. Người dùng cũng có thể dùng tài liệu giản đồ biểu diễn trong ngôn ngữ W3C
XML Schema Definition (đôi khi gọi là giản đồ XSD) để chỉ ra cấu trúc hợp lệ trong
XML.
Việc sử dụng khối Try... Catch trong mã T-SQL cho phép người dùng chỉ ra
điều gì phải làm khi lỗi xảy ra.
Trong SQL Server management Studio, người dùng có thể tìm thấy nhiều
đoạn mã mẫu giúp người dùng thực hiện những tác vụ thường gặp với T-SQL. Để
xem các mẫu này, người dùng chọn trình đơn View > Template Explorer.
Tính năng 3. Tăng cường hỗ trợ người phát triển:
a, Hỗ trợ cho Common Language Runtime (CLR):
CLR được dùng bởi mã .NET, được nhúng vào trong cỗ máy CSDL SQL
Server 2005. Người dùng có thể viết các thủ tục lưu sẵn, trigger, hàm, tính tốn tập
hợp và các kiểu dữ liệu do người dùng định nghĩa bằng cách sử dụng các ngôn ngữ
như VB.NET hoặc C#.
Thử tục lưu sẵn được viết bằng ngôn ngữ .NET là một thay thế tốt cho thủ tục
lưu sẵn mở rộng trong SQL Server 2000 bởi vì người dùng có thể chỉ ra mức độ bảo
SVTH: Phan Chiến Thắng 18 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
mật cho mã .NET. Có 3 mức độ bảo mật cho mã .NET:
+ An Tồn: Mức độ này khơng cho phép truy cập ngoài phạm vi SQL
Server. Mã của ngngfừi dùng không được phép truy cập hệ thống tập tin, registry,
các biến môi trường hoặc mạng. Đây là mức bảo mật cao nhất.
+ Truy xuất mở rộng: Mức độ này cho phép mã của người dùng truy xuất
có giới hạn ra ngồi phạm vi SQL Server. Cụ thể là người du có thể truy xuất
registry, hệ thống tập tin, các biến môi trường hoặc mạng.
+ Khơng an tồn: Ở mức độ này người dùng có thể truy xuất bất kỳ chức
năng mong muốn nào ngoài phạm vi SQL Server 2005. Người dùng chỉ nên dùng
mức độ bảo mật này nếu chắc chắn mã được viết tốt, và người dùng tin cậy người
viết mã đó.
b, Các kiểu dữ liệu mới:
Varchar(max): Kiểu này cho phép người dùng dùng chuỗi kí tự lớn hơn 8000
byte (8000 kí tự). Tối đa là 2 GB.
Nvarchar(max): Kiểu này cho phép người dùng dùng chuỗi kí tự Unicode lớn
hơn 8000 byte (4000 kí tự). Tối đa là 2 GB
Varbinary(max): kiểu này cho phép người dùng dùng dữ liệu nhị phân lớn.
hơn 8000 byte
c, SQL Management Object (SMO):
SMO thay thế cho Distributed Management Objects (DMO) được dùng trong
SQL Server 2000. SMO nhanh hơn DMO ở nhiều thiết lập bởi vì mỗi đối tượng chỉ
được thực hiện từng phần. Ví dụ, người dùng muốn liệt kê một danh sách hàng ngàn
đối tượng lên tree view (Cấu trúc hình cây), người dùng khơng cần nạp đầy đủ thông
tin của đối tượng ngay một lần. Ban đầu người dùng chỉ cần hiển thị tên của đối
tượng, khi nào cần thì mới nạp đầy đủ thơng tin của đối tượng đó. Điều này giúp các
người dùng tiết kiệm được nhiều thời gian cho các tác vụ đơn giản.
d, Tự động thực thi mã kịch bản:
Nếu người dùng đã dùng các chương trình của Microsoft như Microsoft
Access, Excel, người dùng biết rằng có thể tạo các macro (mã thực thi) cho phép
SVTH: Phan Chiến Thắng 19 Lớp 46E2_KS CNTT
Tìm hiểu cơng nghệ ASP.NET và xây dựng Website khoa Kỹ thuật công nghệ
trường Đại học Hà Tĩnh
người dùng thực hiện tự động một số tác vụ nào đó. SQL Server 2005 bây giờ có
tính năng tự động tạo mã kịch bản T-SQL từ những hành động mà người dùng dùng
gian diện hình ảnh trong SQL Server Management Studio.
e, Truy cập Http:
Dùng giao thức HTTP để truy cập vào SQL Server 2005 là tính năng mới cho
phép người lập trình truy cập vào SQL Server mà không phụ thuộc vào việc IIS có
đang chạy trên cùng máy hay khơng. SQL Server có thể cùng tồn tại với IIS nhưng
khơng giống với SQL Server 2000, IIS khơng cịn là u cầu bắt buộc với SQL
Server 2005. Truy cập HTTP cho phép phát triển dùng XML Web Service với SQL
Server 2005. Truy cập HTTP có thể thực thi nhóm lệnh T-SQL hoặc thủ tục lưu sẵn.
Tuy nhiên, vì lí do bảo mật truy cập HTTP mặc định sẽ bị vơ hiệu hóa. Để sử dụng
truy cập HTTP người dùng phải chỉ rõ người dùng, thủ tục lưu sẵn và CSDL được
phép hỗ trợ nó.
Tính năng 4. Tăng cường khả năng quản lý:
Các công cụ quản lý trong SQL Server 2005 có sự thay đổi rất lớn so với SQL
Server 2000. Thay đổi chính đến từ SQL Server management Studio.
a, Những công cụ quản lý mới:
Trong SQL Server 2000, công cụ quản lý chủ yếu là Enterprise Manager và
Query Analyzer. SQL Server 2005, Với công cụ quản lý mới là SQL Server
Management Studio đã thay thế hồn tồn 2 cơng cụ trên của SQL 2000. Công cụ
này cho phép người dùng quản lý nhiều thể hiện SQL Server dễ dàng hơn. Từ một
giao diện, người dùng có thể quản lý nhiều thể hiện của cỗ mãy CSDL SQL Server,
Analysis Services, Intergration Services và Reporting Services.
Công cụ mới SQL Server Configuration Manager cho phép bạn kiểm soát các
dịch vụ kết hợp với SQL Server 2005. Nó có thể thay thế cho Services Manager và
cơng cụ cấu hình mạng cho Server và Client. Người dùng cũng có thể kiểm sốt một
số dịch vụ khác như: SQL Server, SQL Agent, SQL Server Analysis Services, DTS
SVTH: Phan Chiến Thắng 20 Lớp 46E2_KS CNTT