Cổng thông tin điện tử tích hợp là điểm truy cập tập trung và duy nhất, tích 
hợp các kênh thông tin, các dịch vụ và ứng dụng, phân phối tới người sử 
dụng thông qua một phương thức thống nhất và đơn giản trên nền tảng 
Web
                
              
                                            
                                
            
                       
            
                 130 trang
130 trang | 
Chia sẻ: lylyngoc | Lượt xem: 2251 | Lượt tải: 4 
              
            Bạn đang xem trước 20 trang tài liệu Giới thiệu Portal và Dotnetnuke, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
1 
Mục lục 
1. Khái niệm Portal ...................................................................................................................3 
1.1 Khái niệm cổng thông tin tích hợp (portal) ..................................................................3 
1.2 Phân loại cổng thông tin ................................................................................................3 
1.2.1 Các Portal công cộng (Public Portal) ....................................................................3 
1.2.2 Các Portal tác nghiệp (Enterprise Portal) ..............................................................3 
1.2.3 Các Portal Website .................................................................................................4 
1.3 Các tính năng cơ bản của portal ....................................................................................4 
1.4 Các dịch vụ mà hệ thống Portal có thể cung cấp .........................................................6 
1.5 Sự khác nhau cơ bản của Portal và WebSite ................................................................7 
2. Giới thiệu Dotnetnuke Portal (Giải pháp phát triển Website cộng nghệ mới) .................9 
2.1 Giới thiệu chung .............................................................................................................9 
2.1.1 Dotnetnuke là gì (DNN) ? ......................................................................................9 
2.1.2 Nguồn gốc Dotnetnuke .........................................................................................11 
2.1.3 Khả năng mở rộng ...............................................................................................12 
2.2 Cài đặt Dotnetnuke ....................................................................................................12 
2.2.1 Tải hệ thống DotNetNuke ....................................................................................12 
2.2.2 Cài đặt ....................................................................................................................13 
2.3 Trang cơ bản .................................................................................................................22 
2.3.1 Tổng quan về trang ...............................................................................................22 
2.3.2 Tạo trang cơ bản ...................................................................................................24 
2.3.3 Xóa trang ...............................................................................................................27 
2.3.4 Phục hồi trang bị xóa ............................................................................................28 
2.3.5 Phân quyền sử dụng trên trang.............................................................................31 
2.3.6 Di chuyển trang .....................................................................................................32 
2.4 Quản Lý WebSite .........................................................................................................35 
2.4.1 Thay đổi Skin của WebSite ..................................................................................35 
2.4.2 Thay đổi logo của WebSite ..................................................................................41 
2.4.3 Quản lý người dùng .............................................................................................43 
2.4.4 Quản lý File ..........................................................................................................45 
2.5 Quản lý Modules ..........................................................................................................47 
2.5.1 Tổng quan về module ...........................................................................................47 
2.5.2 Thêm module vào trang ........................................................................................51 
2.5.3 Di chuyển module .................................................................................................53 
2.5.4 Xóa Module...........................................................................................................56 
2.5.5 Phục hồi module bị xóa ........................................................................................57 
2.5.6 Phân quyền cho module .......................................................................................59 
2.6 Một số module thường dung .......................................................................................62 
2.6.1 Text/Html ..............................................................................................................62 
2.6.2 Announcements (thông báo) ................................................................................63 
2.6.3 Link (liên kết) ......................................................................................................66 
2.6.4 Module Documents (tài liệu) ...............................................................................71 
2.6.5 Events (sự kiện) ....................................................................................................75 
3 Kiến trúc Module của Dotnetnuke .....................................................................................78 
3.1 Định nghĩa ....................................................................................................................78 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
2 
3.2 Xây dựng module .........................................................................................................80 
3.2.1 Cơ sở dữ liệu và thiết lập ban đầu .......................................................................81 
3.2.2 Tầng logic nghiệp vụ (Business Logic Layer - BLL).........................................83 
3.2.3 Tầng truy cập dữ liệu (Data Access Layer - DAL) ............................................85 
3.2.4 Tầng giao diện (Presentation Layer) ...................................................................86 
3.2.5 Khai báo module với Dotnetnuke ........................................................................87 
4. Ứng dụng xây dựng Tòa soạn báo điện tử ........................................................................91 
4.1 Cách nhìn nhận về Tòa soạn báo điện tử ....................................................................91 
4.2 Mục tiêu đề tài ..............................................................................................................91 
4.2.1 Tìm hiểu Bộ portal mã nguồn mở DotNetNuke .................................................91 
4.2.2 Xây dựng tòa soạn báo điện tử.............................................................................92 
4.3 Xây dựng hệ thống .......................................................................................................93 
4.3.1 Các chức năng chính của hệ thống ......................................................................93 
4.3.2 Xây dựng cơ sở dữ liệu ..................................................................................... 103 
4.3.3 Xây dựng module và gắn vào Dotnetnuke ....................................................... 110 
4.4 Giao diện chương trình ............................................................................................. 122 
5. Tổng kết ........................................................................................................................... 128 
Tài liệu tham khảo ............................................................................................................... 130 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
3 
CHUYÊN ĐỀ TỐT NGHIỆP CÔNG NGHỆ .NET 
Portal và Dotnetnuke 
1. Khái niệm Portal 
1.1 Khái niệm cổng thông tin tích hợp (portal) 
“Cổng thông tin điện tử tích hợp là điểm truy cập tập trung và duy nhất, tích 
hợp các kênh thông tin, các dịch vụ và ứng dụng, phân phối tới người sử 
dụng thông qua một phương thức thống nhất và đơn giản trên nền tảng 
Web”. 
1.2 Phân loại cổng thông tin 
Có nhiều cách phân loại Portal, ở đây phân loại theo mục đích sử 
dụng cũng như quy mô thì có thể chia các Portal hiện có thành ba loại. 
1.2.1 Các Portal công cộng (Public Portal) 
Các Portal loại này được thiết kế dành cho một lượng rất lớn người 
dùng dễ dàng truy cập vào các ứng dụng trên web (web-based) thông qua 
các liên kết và hộp tìm kiếm chỉ bằng một lần đăng nhập duy nhất. Nổi tiếng 
nhất trong loại Portal này là các Portal: My Yahoo, AOL hay Excite. Các 
Portal kiểu này hướng đến đại đa số người dùng, do vậy chúng thường tập 
trung vào khả năng cá nhân hóa (Personalization), đa ngôn ngữ, phát triển 
các tính năng phổ biến sao cho người dùng có thể sử dụng dễ dàng. Khả 
năng quản lý số lượng người dùng rất lớn cũng như cho phép tìm kiếm 
nhanh thông tin từ một lượng dữ liệu khổng lồ là thế mạnh của loại portal 
này tuy nhiên vì phục vụ số đông nên chúng không dành cho các công việc 
nghiệp vụ cụ thể nào cả. 
1.2.2 Các Portal tác nghiệp (Enterprise Portal) 
Các Portal loại này quản lý số lượng người dùng không nhiều bằng 
Portal công cộng. Các Portal loại này chuyên dùng cho các doanh nghiệp, 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
4 
phục vụ cho tác nghiệp, chuyên làm các công việc nghiệp vụ như: quản lý 
mạng lưới bán lẻ, ngân hàng, website bán hàng cỡ lớn hay quản lý tài 
nguyên công ty... Do vậy, chúng được thiết kế rất tốt, thực hiện được các 
nghiệp vụ phức tạp, liên kết nhiều kiểu dữ liệu khác nhau. 
1.2.3 Các Portal Website 
Các Portal kiểu này thường dùng để tạo ra các Website, chính xác hơn 
là các Website có thể tùy biến (customizable website). Các Portal này cung 
cấp các tính năng rất cơ bản, giúp các nhà phát triển web có thể dễ dàng tạo 
ra một website cho riêng mình. Các Portal này hỗ trợ các tính năng cá nhân 
hoá và đa ngôn ngữ ở mức vừa phải, có thể thêm vào các mô đun tác nghiệp 
không quá phức tạp. Để làm được điều này, các Portal được mở một phần 
hoặc hoàn toàn mã nguồn, để người dùng Portal (thường là quản trị Website) 
có thể tự xây dựng các mô đun, tất nhiên là theo chuẩn của Portal, để tích 
hợp vào website của mình hoặc thậm chí đem bán cho các site khác có cùng 
nguồn gốc. Các portal này tương đối đơn giản, chỉ sử dụng một vài cơ sở dữ 
liệu phổ biến, tuy nhiên cũng không kém phần linh động khi tuỳ biến giao 
diện cũng như thao tác nghiệp vụ. 
1.3 Các tính năng cơ bản của portal 
Tuy có nhiều loại cổng thông tin khác nhau, cung cấp nhiều loại dịch 
vụ và ứng dụng khác nhau, nhưng tất cả các loại cổng thông tin đều có 
chung một số tính năng cơ bản. Các tính năng này là được sử dụng như là 
một tiêu chuẩn để phân biệt giữa cổng thông tin điện tử tích hợp với một 
website hoặc với một ứng dụng chạy trên nền tảng Web (web application). 
Các tính năng đó bao gồm: 
 Đăng nhập một lần (Single-Sign-On-SSO) 
Để truy cập vào dữ liệu và dịch vụ khác nhau, người dùng chỉ cần 
đăng nhập một lần duy nhất. Hệ thống Portal thực hiện điều này thông qua 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
5 
quá trình quản lý phiên (Session Management). Thông qua quá trình này, 
người dùng dễ dàng truy cập và thao tác dữ liệu, nhưng không phải lo lắng 
gì về mặt an ninh bảo mật vì Portal đã dùng những công nghệ bảo mật an 
toàn nhất ngầm phía dưới một phiên làm việc từ khi người dùng đăng nhập 
đến khi đăng xuất. 
 Khả năng cá nhân hoá (Customization hay Personalization) 
Khi người dùng đăng ký với hệ thống, họ sẽ được cấp một tài khoản. 
Mỗi tài khoản người dùng đăng nhập vào đều được cấp cho một “khung trời 
riêng”, họ có cảm giác như là một website của riêng mình, họ có thể tuỳ biến 
được giao diện tuỳ theo ý thích, thêm bớt các mô đun, hình ảnh… giống như 
post hay delete một bài viết của mình trên forum vậy. Khả năng này còn thể 
hiện ở chỗ: nhà quản trị website có thể trực quan hoá các công việc thêm 
bớt, thay đổi vị trí các mô đun mà không động đến một dòng HTML hay mã 
nguồn của Website mình. 
 Tích hợp nhiều loại thông tin (Content aggregation): 
Cho phép xây dựng nội dung thông tin từ nhiều nguồn khác nhau cho 
nhiều đối tượng sử dụng. Sự khác biệt giữa các nội dung thông tin sẽ được 
xác định qua các ngữ cảnh hoạt động của người dùng, ví dụ như đối với từng 
đối tượng sử dụng sau khi thông qua quá trình xác thực thì sẽ được cung cấp 
các thông tin khác nhau, hoặc nội dung thông tin sẽ được cung cấp khác 
nhau trong quá trình cá nhân hoá thông tin. 
 Xuất bản thông tin (Content syndication): 
Thu thập thông tin từ nhiều nguồn khác nhau, cung cấp cho người 
dùng thông qua các phương pháp hoặc giao thức (protocol) một cách thích 
hợp. Một hệ thống xuất bản thông tin chuyên nghiệp phải có khả năng xuất 
bản thông tin với các định dạng đã được quy chuẩn, ví dụ như RDF 
(Resource Description Format), RSS (Realy Simple Syndication), NITF 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
6 
(News Industry Text Format) và NewsXML. Ngoài ra, các tiêu chuẩn dựa 
trên XML cũng phải được áp dụng để quản trị và hiển thị nội dung một cách 
thống nhất, xuyên suốt trong quá trình xuất bản thông tin. Các tiêu chuẩn 
dựa trên XML này cho phép đưa ra giải pháp nhanh nhất để khai thác và sử 
dụng thông tin trên các Web site khác nhau thông qua quá trình thu thập và 
bóc tách thông tin với các định dạng đã được quy chuẩn. 
 Hỗ trợ nhiều môi trường hiển thị thông tin (Multidevice support): 
Cho phép hiển thị cùng một nội dung thông tin trên nhiều loại thiết bị 
khác nhau như: màn hình máy tính (PC), thiết bị di động (Mobile phone, 
Wireless phone, PDA), sử dụng để in hay cho bản fax…. một cách tự động 
bằng cách xác định thiết bị hiển thị thông qua các thuộc tính khác nhau. Ví 
dụ: cùng một nội dung đó, khi hiển thị trên màn hình máy tính thì sử dụng 
HTML, nhưng khi hệ thống xác định được thiết bị hiển thị là PDA hay 
mobile phone, hệ thống sẽ loại bỏ các ảnh có trong nội dung và tự động 
chuyển nội dung đó sang định dạng WML (Wireless Markup Language) để 
phù hợp cho việc hiển thị trên màn hình của thiết bị di động. 
 Quản trị portal (Portal administration): 
Xác định cách thức hiển thị thông tin cho người dùng cuối. Tính năng 
này không chỉ đơn giản là thiết lập các giao diện người dùng với các chi tiết 
đồ hoạ (look-and-feel), với tính năng này, người quản trị phải định nghĩa 
được các thành phần thông tin, các kênh tương tác với người sử dụng cuối, 
định nghĩa nhóm người dùng cùng với các quyền truy cập và sử dụng thông 
tin khác nhau. 
1.4 Các dịch vụ mà hệ thống Portal có thể cung cấp 
Hệ thống Portal cần xây dựng cung cấp các nhóm dịch vụ như sau: 
 Các dịch vụ cơ bản: post bài định dạng HTML/Document, Danh sách 
liên kết, Upload/Download Files, Thao tác ảnh… 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
7 
 Các dịch vụ cộng đồng ảo (Virtual community hay Collaboration) 
Cộng đồng ảo là “một địa điểm ảo” trên internet mà các cá nhân hay 
tổ chức có thể tập hợp để giúp đỡ, hợp tác với nhau mà ranh giới về vị trí địa 
lý không còn có ý nghĩa. 
 Cung cấp môi trường cộng tác (collaborative) thông qua việc quản lý 
và khai thác thống nhất toàn diện các dịch vụ cơ bản như: Forum, Mail, 
Calendar, Task Management, Report Systems, Conferences, Discussion 
Groups, News Groups, v.v... 
 Các dịch vụ cung cấp thông tin: Thông báo, bản tin… 
 Các dịch vụ tìm kiếm: 
Hỗ trợ tìm kiếm nhanh và mạnh theo nhiều tiêu chí: tiêu đề, ngày, từ 
khóa, phân loại… và trong toàn bộ nội dung trang. Kết hợp với các trang tìm 
kiếm như Google, Yahoo, Vinaseek… 
 Các dịch vụ hiển thị tự động và đa kết nối 
Có thể soạn trước các bài và cài đặt ngày giờ cho hiển thị lên trang 
báo, sẽ tạo ra tính năng online về nội dung, mà không tốn nhiều công sức. 
Ngoài ra có thể tích hợp với các nguồn tin hay hệ thống dữ liệu khác. 
 Các dịch vụ trợ giúp người dung: thông tin cá nhân, Lịch biểu… 
1.5 Sự khác nhau cơ bản của Portal và WebSite 
Portal (cổng giao dịch điện tử) là một bước tiến hóa của website 
truyền thống. Nó ra đời để giải quyết những vấn đề mà website truyền thống 
gặp phải. Xây dựng hệ thống Portal thay vì Website bởi vì hệ thống Portal 
có những ưu điểm hơn hẳn so với Website có cùng chức năng như sau: 
- Là "siêu web site“, gọi tắt là Portal, đối với người dùng vẫn chỉ là sử 
dụng trang web thông qua trình duyệt (tức là web browser), nhưng đằng sau 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
8 
đó là sự thay đổi thuật ngữ và quan niệm mới về triết lý phục vụ thay cho 
cách hiểu “tuyên truyền” thông qua web site như trước đây. 
- Các mô đun trong Portal có tính độc lập cao, hoạt động không ảnh 
hưởng tới các mô đun khác. 
- Người dùng Portal có khả năng truy cập thông tin có được từ nhiều 
nguồn dữ liệu khác nhau. 
 - Người phát triển dựa theo các chuẩn có sẵn để tích hợp thêm các 
mô đun tác nghiệp mới. 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
9 
2. Giới thiệu Dotnetnuke Portal (Giải pháp phát 
triển Website cộng nghệ mới) 
2.1 Giới thiệu chung 
2.1.1 Dotnetnuke là gì (DNN) ? 
a. Khái niệm: 
DotNetNuke là một hệ thống quản lý nội dung mã nguồn mở viết 
bằng ngôn ngữ lập trình VB.NET trên nền tảng ASP.NET, hệ quản trị cơ sở 
dữ liệu có thể là MS SQL server hoặc Oracle, tùy biến dựa trên Skin và 
Module. DNN được đánh giá là hệ thống quản trị nội dung mã nguồn mở 
.NET phát triển mạnh nhất hiện nay với số lượng thành viên đông đảo và 
phát triển rất nhanh trên khắp thế giới. 
b. Các tính năng cơ bản của DotNetNuke portal: 
 Hệ thống quản lý nội dung trực quan: 
 - DNN portal quản lý nội dung theo menu tình huống, trên mỗi 
module sẽ có một menu tương ứng xuất hiện ngay tại một ICON bên trái 
Title của Module. Người sử dụng sẽ dễ dàng tìm ra các chức năng điều 
khiển hay quản trị của module này một cách nhanh chóng tương ứng với 
quyền quản trị của mình. 
 - Các module được hiển thị và phân bố trên giao diện portal dễ dàng 
nhờ vào các từ khoá định trước trên các vùng khác nhau của giao diện. 
Chúng ta có thể di chuyển một module từ khu vực này sang khu vực khác 
bằng một lệnh trên menu tình huống hoặc dùng cách Drag and Drop (Kéo 
thả). 
 - Nội dung thông tin được soạn thảo trên công cụ được hỗ trợ với các 
công cụ thuận tiện và hiện đại nhất: với khả năng chèn Flash file, Movie, … 
điều chỉnh các thuộc tính của đối tượng, làm sạch code… 
Giới thiệu Portal và Dotnetnuke 
------------------------------------------------------------------------------------------------------- 
Nguyễn Tất Đạt – A06447 
10 
 - Cấu trúc site (Site Map) được quản lý một cách dễ dàng. Người sử 
dụng có thể thêm một trang mới vào hệ thống và cho phép hoặc không cho 
phép xuất hiện trên Menu. 
 Quản lý giao diện độc lập, linh hoạt 
 - Giao diện được phát triển riêng độc lập với chương trình, một nhà 
thiết