Tải bản đầy đủ (.docx) (20 trang)

Xây dựng website tin tức bằng ASP.NET MVC5

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.49 MB, 20 trang )

LỜI CẢM ƠN
Ngày nay, công nghệ thông tin ngày càng phát triển và tỏ rõ tầm quan
trọng trong tất cả các lĩnh vực, có thể nói công nghệ thông tin đã trở thành
thước đo để đánh giá sự phát triển của xã hội hiện đại – nơi mà con người
đang dần thoát khỏi cách làm việc thủ công, thô sơ và dần tiến đến tin học
hóa trong tất cả các lĩnh vực để công việc có hiệu quả hơn, tiết kiệm thời
gian và nhân lực.
Việc nghiên cứu và lập trình ra các phần mềm, các ứng dụng mới là điều
hướng tới của các sinh viên theo học công nghệ thông tin. Bản báo cáo này
trình bày kết quả của việc lập trình ứng dụng xây dựng trang tin tức onlline
trong đề tài thực tập chuyên nghành. Trong quá trình thực hiện em nhận
được sự giúp đỡ nhiệt tình từ các giảng viên trong khoa công nghệ thông tin.
Nhân dịp này em xin gửi lời cảm ơn đến khoa công nghệ thông tin đã tạo
cơ hội giúp em được tham gia học hỏi, rèn luyện các kỹ năng cần thiết cho
đợt thực tập chuyên nghành. Đặc biệt em xin gửi lời cảm ơn đến giảng viên
ThS.Nguyễn Thị Hồng Anh đã quan tâm góp ý cho bài làm thực tập
chuyên nghành và sẵn sàng trả lời những thắc mắc khi cần thiết giúp em
hoàn thành tốt bài làm của mình.
Mặc dù đã có nhiều cố gắng nhưng do kiến thức còn hạn chế cùng với
kinh nghiệm chưa có nên không tránh khỏi thiếu sót.Vì vậy em rất mong
nhận được những ý kiến đóng góp bổ sung của thầy cô giáo và các bạn để
bài làm thực tập chuyên nghành của em được hoàn thiện hơn.
Sinh viên thực hiện
Nguyễn Duy Thắng

ĐỀ TÀI: Xây dựng website tin tức bằng ASP.NET MVC5
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Giáo viên hướng dẫn: ThS.Nguyễn Thị Hồng Anh
Sinh viên thực hiện: Nguyễn Duy Thắng



MỤC LỤC
1. Mục đích, yêu cầu của trang web
Sau khi được học và tìm hiểu về ngôn ngữ ASP.NET, bằng khả năng thực
tế và kiến thức có được, em đã xây dựng Website tin tức.
Website tin tức là giải pháp tạo lập một trang báo điện tử với khả năng tiếp cận
độc giả toàn cầu và liên tục. Khả năng xuất bản thông tin nhanh chóng và tính
cập nhật đa dạng.Website tin tức bao gồm một hệ thống quản lý nội dung – cho
phép biên tập tin tức, hình ảnh, sắp xếp theo chuyên mục, phân quyền đến từng
chức năng biên tập và duyệt tin...
2. Yêu cầu của hệ thống mới
- Hình thức thông tin đa dạng và sống động
- Giao diên thân thiện, dễ nhìn
- Cập nhật các tin tức, sự kiện, hoạt động 24/24
- Thông tin được cập nhật và sửa đổi thường xuyên
- Có khả năng cập nhật, sửa, xoá.
- Có khả năng tra và tìm kiếm một cách nhanh chóng.

II. PHÂN TÍCH HỆ THỐNG.
1. Yêu cầu chi tiết về website
- Hiển thị các danh mục tin tức.
- Hiển thị chi tiết về các tin tức được cập nhật.
- Hiện thị kết quả của việc tìm kiếm danh mục, tin tức, bài viết.
- Hiện thị được các lượt tin mới nhất, tin nổi bật, tin được xem nhiều nhất
các tin được bạn đọc, độc giả bình luận nhiều nhất.
a. Đối với người truy cập Website với chức năng User
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


- Cho phép đăng ký thành viên.

- Cho phép xem tin tức tìm kiếm thông tin về các tin tức.
- Cho phép Post ý kiến góp ý diễn đàn ,bình luận về các tin tức, sự kiện..

b. Đối với người quản trị
- Quản lý các user: xoá, sửa, nhập thêm User, Admin.
- Cập nhật mới các thông tin liên quan, sửa thông tin , xoá
- Hiển thị thông tin lên theo các danh mục tin tức

2. Biểu đồ phân cấp chức năng, biểu đồ luồng dữ liệu.
a. Biểu đồ phân cấp chức năng
- Hệ thống WebSite Tin tức.
Hệ thống WebSite
Tin tức

Trang chủ

Thời Sự

Kinh doanh

Pháp luật

Thể thao

Giáo dục

Đời sống

Giải trí


Thoát

Người quản trị: Admin.
Chức năng login: Đảm bảo tính bảo mật cho toàn bộ hệ thồng chỉ có
người có quyền Amin mới tham gia vào chức năng này như người quản trị toàn
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


bộ hệ thống (Nhập, sửa, xóa, xem bài viết thành viên, quản lí tài khoản người sử
dụng.

Admin

Hệ thống WebSite

Xem bài viết

Quản lý User

Tìm kiếm

Thành viên WebSite: Dành cho User khi đăng nhập vào (Xem thông tin sản
phẩm, gửi bài viết đóng góp ,góp ý…).

User

Hệ thống Website

Gửi bài viết


Tìm kiếm

b. Biểu đồ luồng dữ liệu
- Biểu đồ luồng dữ liệu mức khung cảnh
Yêu cầu quản lý
Admin

Hệ thống

Yêu cầu
User

Quản lýchung

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh

Chấp nhận/ không


- Biểu đồ luồng dữ liệu mức đỉnh.

Amin

User

Trang chủ

Tìm kiếm
Phân quyền


Sửa đổi tin
Thông tin cập nhật

Thông tin cập nhật

Đăng nhập HT.

Thông tin cập nhật

+ Chức năng cập nhật
Các tin mới
Các danh mục
tin

Thêm các bài
viết mới

Chi tiết tin
Sửa

Xóa

Bổ sung

Database

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Thông tin mới vừa nhập sẽ lưu vào kho dữ liệu. Các thông tin trong kho

dữ liệu sẽ được cập nhật (sửa, xoá)

+ Chức năng tìm kiếm
Kho dữ liệu

Tìm kếm bài viết

Thông tin
Kết quả

User

Yêu cầu thông tin

Người dùng có thể tìm kiếm cho mình một thông tin về tin tức, bài viết
nào đó mà mình đang quan tâm.

+ Chức năng đăng ký thành viên.

Database

Đăng ký/đăng nhập Thông tin chấp nhân/không

Kết quả
Yêu cầu đăng nhập hệ thống

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh

User



- Người dùng là thành viên thì có thể xem thông tin các tin tức tại Website
chính vì thế hệ thống login sẽ thực hiện việc kiểm tra đăng nhập cũng như đăng
ký thành viên cho phép User có thể là thành viên của Website. Các thông tin
thành viên được lưu trữ trong CSDL Database.

III. THIẾT KẾ HỆ THỐNG (CƠ SỞ SỮ LIỆU).
1. Thiết kế CSDL.
- Cơ sở dữ liệu nhằm lưu giữ thông tin cần thiết cho chương trình. Với
mỗi một cơ sở dữ liệu sẽ thể hiện rõ thông tin tối thiểu cần có của việc quản lý.
- Để lưu trữ CSDL và thực hiện các thao tác, cũng như thuật toán khác
nhau với trang web thì cần phải tìm những cấu trúc dữ liệu thích hợp để mô tả
quá trình hoạt động của trang web.
- Để tạo một cơ sở dữ liệu, trước hết ta phải xác định những thông tin gì
cần thiết.
- Sau đó ta thiết kế, tạo các bảng chứa các trường định nghĩa kiểu dữ liệu
sẽ có.
Sau khi tạo ra cấu trúc cơ sở dữ liệu, cơ sở dữ liệu có thể chứa dữ liệu dưới
dạng bản ghi
2. Lựa chọn ngôn ngữ lập trình.
Giới thiệu về ASP.NET MVC
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


- Asp.net MVC là công nghệ lập trình web động của do Microsoft phát triển
(các phiên bản trước đó và song song là Asp.net web form, Asp.net WebPage).
Asp.net MVC là 1 sự cải tiến của Asp.net webformvà kết hợp các kỹ thuật của
asp.net WebPage (Kỹ thuật lập trình trong WebPage tương tự như PHP một
công nghệ lập trình web mã nguồn mở rất phỏ biến hiện nay). Chúng tận dụng
được các kỹ thuậ lập trình hướng đối tượng của ngôn ngữ .net , mô hình Entity

Framework như webform , đồng thời tận dụng được khả năng lập trình
phía client ( hỗ trợ lập trình javascript , css tốt hơn so với webform). Đó là 1
tính năng mạnh của công nghệ PHP mà webform không có. (Một khái niệm mới
các bạn có thể bỡ ngỡ đó là web động .Web động thực ra là những website được
xây dựng từ các ngôn ngữ lập trình như C# , vb.net , PHP , Java để tự động sinh
mã HTML ( nội dung có thể được lấy và lưu trữ bằng cơ sở dữ liệu ) Đó là điểm
khác biệt với các trang html tĩnh )
- Từ phiên bản MVC 3, Microsoft đã tích hợp công cụ xây dựng giao diện bằng
Razor View Engine. Khiến cho các lập trình viên không còn phàn nàn về việc
sử lý Client rắc rối của webform so với PHP .
- Nói chung MVC tận dụng được sức mạnh lập trình hướng đối tượng của .net
và sinh và xử lý mã HTML ( như php và jsp ) .Đó cũng là một tư tưởng chủ đạo
trong thế giới lập trình .net của Microsoft đó là : tích hợp những cái hay của
công nghệ khác , công với những sáng tạo riêng để sinh ra một công nghệ hoàn
hảo. Đây là 1 điều đáng để các bạn tự học hay người đầu tiên bước chân vào thế
giới lập trình web học ngay công nghệ Asp.net MVC, đó là Asp.net MVC tận
dụng tối đa sức mạnh lập trình của các công nghệ lập trình web khác ( như php ,
java ), đồng thời có những sáng tạo sức mạnh riêng mà các công nghệ trên
không có .
Giới thiệu về MVC5
- Mô hình MVC phân chia ứng dụng làm 3 tầng là : Model, View, Controller

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Model : là nơi định nghĩa các lớp của ứng dụng, các lớp định nghĩa cơ sở dữ
liệu .
View : là nơi định nghĩa giao diện để sinh ra các mã html hiển thị trên trình
duyệt .
- Việc hiển thị nội dung trên View trong MVC dùng các đối tượng Html để hiển

thị. Đây là 1 điểm mới của razor view engine so với webform, làm cho lập trình
mvc trở nên dễ hiểu về view hơn so với webform ( trong webform thì dữ liệu
được hiển thị bằng các web Control, tức là khi học webform thì bắt buộc các
bạn cần học các thuộc tính của các loại Control, sau đó aspx Engine sẽ tự động
sinh mã html khi chạy ứng dụng ). Còn với MVC thì các bạn không cần học gì
hết ngoài việc hiểu biết về Html và 1 ngôn ngữ .net ( C# hoặc vb.net)
Controller : là nơi trao đổi dữ liệu giữa View và Model .Controller sẽ lấy dữ
liệu và trả về View, và Controller cũng lẫy các yêu cầu trên view để xử lý, cũng
như tương tác với CSDL.
- Asp.net MVC5 là phiên bản kế tiếp của MVC4 được xây dựng trên nền .net
4.5
- Asp.net MVC5 kế thừa các tính năng mạnh từ các phiên bản trước là MVC3,
MVC4 và tích hợp thêm 1 số tính năng về xử lý đa tiến trình, tương tác với Web
API 2.0 tốt hơn MVC4.
- Tính tới thời điểm hiện tại viết tài liệu thì đã có phiên bản thử nghiệm MVC6
trong Asp.net vNext. Asp.net vNext là 1 phiên bản lập trình web có thể coi là tất
cả trong 1 bao gồm các framework, library khác nhau như mvc, web api, xml …
Tức là thích điều gì chúng ta có thể khai báo điều đó để sử dụng.

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


- Với Asp.net vNext hứa hẹn tạo nên một kỹ thuật lập trình web mới và tiện
dụng hơn rất nhiều.Và hiện tại MVC5 cũng đã là một công nghệ mới và có khá
nhiều cải tiến trước khi chúng ta có thể xây dựng được ứng dụng web trên nền
VNET.
MVC và Visual Studio2013
- Một điểm mạnh của công nghệ lập trình web Asp.net đó là chúng ta có một
IDE rất tốt của Microsoft để phát triển ứng dụng đó là Visual Studio.
- Hiện tại Visual Studio đã có tới phiên bản Visual Studio 2013 Update 3 (và có

bản thử nghiệm Visual Studio 14).
- Với Visual Studio 2013 Update 3 chúng ta có một IDE xây dựng mã nguồn rất
mạnh từ việc viết code(hỗ trợ rất nhiều các ngôn ngữ như C#, HTML –
HTML5, CSS – CSS3, Type Script, SASS....)
- Ngoài ra Visual Studio 2013 Update 3 cũng thay đổi khá nhiều trong cách biên
dịch và xây dựng ứng dụng.
- Đặc biệt là với MVC5 thì Visual Studio 2013 Update 3 cũng tích hợp thêm thư
viện xây dựng giao diện bootstrap hay xây dựng javascript bằng ngôn ngữ
hướng đối tượng Type Script hay CSS với ngôn ngữ SASS.
3. Lựa chọn cài đặt CSDL.
- Lựa chọn hệ quản trị CSDL để thực hiện lưu trữ CSDL cho một chương
trình có vai trò quan trọng quyết định không nhỏ đến sự thành công của chương
trình. Lựa chọn hệ quản trị CSDL cũng chịu tác động của nhiều yếu tố khách
quan cũng như chủ quan, phụ thuộc vào từng bài toán và thuật toán cụ thể.
- SQL Server là hệ quản trị CSDL quen thuộc, gần gũi với HSSV do đó
em quyết định chọn SQL Server 20012 để lưu trữ CSDL cho đề tài .
4. Xác định các thực thể.
Bước đầu trong phân tích thiết kế cơ sở dữ liệu là phân tích các yêu cầu
của dữ liệu, tức là ta phải xác định được các thông tin cần quản lý để xác đinh ra
các đối tượng cần thiết lưu trữ dữ liệu vào bảng.
- Admin: Đây là thực thể xác định quyền điều hành và quản trị hệ thống.
Người quản trị hệ thống có quyền hạn cao nhất trong hệ thống.

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


- User: Đây là người sử dụng đăng nhập vào hệ thống để xem tin tức Sp
gửi góp ý thông tin về User.
- Loại thông tin: mỗi loại thông tin bài viết có một mã danh mục để phân
biệt với các loại thông tin danh mục khác.

Xuất phát từ quá trình xác định các thực thể như trên ta có thể xây dựng
một CSDL có tên là : Tintucdb_ MVC5.bank và CSDL gồm có các bảng sau:
Bảng MigrationHistory
Tên trường
MigrationId
ContextKey
Model
ProductVersion

Kiểu dữ liệu
nvarchar(150)
nvarchar(300)
Varbinary(MAX)
Nvarchar(32)

Bảng About
Tên trường
Id
Title
[Content]
CreatedOn
LastUpdate

Kiểu dữ liệu
int
Nvarchar(MAX)
Nvarchar(MAX)
smalldatetime
smalldatetime


Bảng Accounts
Tên trường
UserId
Username
Password
FullName
Email
Telephone
CreateDateTime

Kiểu dữ liệu
int
nvarchar(MAX)
nvarchar(MAX)
nvarchar(MAX)
nvarchar(MAX)
nvarchar(MAX)
nvarchar(MAX)

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Bảng Contact
Tên trường

Kiểu dữ liệu

Id
Fullname
Telephone

Email
Address
Message
SentDateTime

int
nvarchar(30)
nvarchar(20)
nvarchar(MAX)
nvarchar(MAX)
nvarchar(1000)
smalldatetime

Bảng News
Tên trường
Id
Caption
Image
Metadata
[Content]
CreateDate Time
NewsCategoryId
Classification

Kiểu dữ liệu
int
nvarchar(Max)
nvarchar(Max)
nvarchar(Max)
nvarchar(Max)

smalldatetime
int
nvarchar(Max)

Bảng NewsCategory
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Tên trường

Kiểu dữ liệu

Id
Name
Description
Image
CreateDateTime

int
nvarchar(MAX)
nvarchar(Max)
nvarchar(Max)
smalldatetime

Bảng VisitorStatistics
Tên trường
Today
Yesterday
ThisMonth
LasMonth

TotalVisitor
DateTimeUpdated
Biểu đồ quan hệ của mô hình dữ liệu

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh

Kiểu dữ liệu
int
bigint
bigint
bigint
bigint
smalldatime


IV. GIAO DIỆN CHƯƠNG TRÌNH.
1. Phần dành cho người sử dụng.
- Hệ thống trang chủ hiển thị thông tin tất cả các danh mục tin, các tin
mới nhất, tin nổi bật, các bài viết, bài đăng,các tin xem nhiều nhất, bình luận
nhiều nhất.

* Các chức năng trên trên trang chủ gồm:
- header-right: Hiển thị slide show các tin nổi bật.
- Header-left:login bằng các tài khoản facebook,youtobe,google+,
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


- Menu_Left: Hệ thống Menu phải gồm có 7 chức năng hiển thị toàn bộ
nhóm tin
Web: thời sự, kinh doanh, pháp luật, thể thao,giáo dục, đời sống, giải trí khuyên


- Body: Hiển thị chi tiết các tin bài
- Menu: Hiển thị tiêu đề chuyên mục
- Menu: Danh mục các tin mới nhất được đổ xuống theo slide list và
video nổi bật.

-

Danh mục các tin nổi bật và các lượt tin được xem nhiều nhất.

Danh mục thời sự và các lượt tin được bình luận nhiều nhất.
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Danh mục kinh doanh và các phần quảng cáo.

2. Phần dành cho quản trị website.
Trang chủ quản trị
Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Trang quản lý các chuyên mục tin

Trang quản lý tin tức, danh mục các bài viết, cho phép cập nhật bài viết mới, thêm
sửa xóa nội dung.

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Trang của ban quản trị wedsite, danh sách các tài khoản được cập nhật, hiển thị.


Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Trang quản lý liên hệ, danh sách những độc giả liên hệ tới ban quản trị.

V. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh


Sau một thời gian tìm hiểu và nghiên cứu đề tài “ Xây dựng trang tin tức
online” em đã được phát triển và hoàn thành cơ bản theo đúng yêu cầu về nội
dung và thời gian quy định. Trong quá trình nghiên cứu và thực hiện đề tài với
quyết tâm cao nhưng do hạn chế về kinh nghiệm và kiến thức nên đề tài của em
chắc chắn sẽ không thể tránh khỏi những thiếu sót. Em rất mong nhận được ý
kiến đóng góp từ quý thầy cô và các bạn để đề tài hoàn thiện hơn.
1. Kết quả đạt được.
- Hoàn thiện được mộ số chức năng cơ bản của một trang báo điện tử.
- Lập trình khá thành thạo với ASP.NET MVC 5 và hệ quản trị cơ sở dữ liệu
SQL sever 2012.
2. Hạn chế của đề tài.
- Do thời gian tìm hiểu còn hạn chế nên em chưa thể hoàn thành hết chức năng
của chương trình.
3. Hướng phát triển.
- Mở rộng thêm nhiều chắc năng mới như cho phép người dùng đăng kí để nhận
tin, cho phép người dùng có thể gửi ý kiến bình luận, đăng kí hosting để hoàn
thành một website hàn chỉnh...
- Thêm một số chức năng mới
- Em rất mong tiếp tục nhận được sự giúp đỡ và tạo điều kiện của quý thầy cô

nhà trường để em có thể tiếp tục mở rộng đề tài.

Người làm đề tài: Nguyễn Duy Thắng – 52K2 CNTT – ĐH Vinh
SĐT: 01683998679. mail:

Giáo Viên Hướng Dẫn ThS. Nguyễn Thị Hồng Anh



×