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

Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL

83 347 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

Định dạng
Số trang 83
Dung lượng 1,59 MB

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

Nội dung

LỜI CẢM ƠNĐược sự phân công của các thầy cô khoa Hệ Thống Thông Tin Kinh tế và trường Đại học Kinh Tế Huế, sau gần 4 tháng thực tập nghề nghiệp, em đã hoàn thành bài Khóa Luận với đề tài

Trang 1

KHOA HỆ THỐNG THÔNG TIN KINH TẾ



KHÓA LUẬN TỐT NGHIỆP

NGHIÊN CỨU MÔ HÌNH MVC VÀ ỨNG

DỤNG XÂY DỰNG WEBSITE BÁN HÀNG CHO CÔNG TY CỔ PHẦN HTL

CỔ KIM NGUYÊN PHƯƠNG

Khóa học: 2009 – 2013Trường Đại học Kinh tế Huế

Trang 2

KHOA HỆ THỐNG THÔNG TIN KINH TẾ



KHÓA LUẬN TỐT NGHIỆP

NGHIÊN CỨU MÔ HÌNH MVC VÀ ỨNG

DỤNG XÂY DỰNG WEBSITE BÁN HÀNG CHO CÔNG TY CỔ PHẦN HTL

Cổ Kim Nguyên Phương Th.S Trần Thái Hòa

Lớp: K43 - Tin Học Kinh Tế

Niên khóa: 2009 - 2013

Huế, 05/2013Trường Đại học Kinh tế Huế

Trang 3

LỜI CẢM ƠN

Được sự phân công của các thầy cô khoa Hệ Thống Thông Tin Kinh tế và trường Đại học Kinh Tế Huế, sau gần 4 tháng thực tập nghề nghiệp, em đã hoàn thành bài Khóa Luận với đề tài “Nghiên cứu mô hình MVC và ứng dụng xây dựng Website bán hàng cho Công ty cổ phần HTL”.

Để thực hiện nhiệm vụ của bài Khóa Luận, ngoài sự nỗ lực của bản thân còn có sự giúp đỡ và hướng dẫn tận tình của các thầy cô trong Khoa cùng các nhân viên của đơn vị thực tập.

Em xin chân thành cảm ơn các thầy cô trong Khoa đã giúp đỡ, hướng dẫn

và luôn động viên, khích lệ em trong suốt quá trình thực tập Đồng thời cho phép

em gửi lời cám ơn đến các nhân viên tại đơn vị thực tập của Công ty cổ phần HTL, đã trao đổi và truyền đạt cho em nhiều kinh nghiệm quý báu trong quá trình thực tập cũng như trong công việc sau này.

Tuy nhiên, do kiến thức chuyên môn còn hạn chế cũng như việc thiếu kinh nghiệm thực tiễn nên nội dung đề tài không tránh khỏi những thiếu sót Vì vậy, em kính mong nhận được sự góp ý, chỉ của quý thầy cô trong Khoa cùng giáo viên hướng dẫn là Thạc sĩ Trần Thái Hòa để đề tài được hoàn thiện hơn.

Cuối cùng em xin cảm ơn đến tất cả các thầy cô giáo trong Khoa Hệ Thống Thông Tin Kinh tế, đến gia đình người thân và tất cả bạn bè đã đóng góp

ý kiến và giúp đỡ cho đề tài của em được hoàn thành.

Em xin chân thành cảm ơn !

Huế, tháng 05 năm 2013

Sinh viên thực hiện

Cổ Kim Nguyên PhươngTrường Đại học Kinh tế Huế

Trang 4

MỤC LỤC

DANH MỤC THUẬT NGỮ 5

DANH MỤC CÁC BẢNG 6

DANH MỤC CÁC HÌNH 6

PHẦN A – MỞ ĐẦU 9

1 Lý do chọn đề tài 9

2 Mục tiêu nghiên cứu 10

3 Đối tượng và phạm vi nghiên cứu 10

4 Phương pháp nghiên cứu 11

5 Kết cấu của đề tài 11

PHẦN B – NỘI DUNG 12

CHƯƠNG 1: TỔNG QUAN VỀ MÔ HÌNH MVC 12

1.1 Xuất xứ của mô hình MVC 12

1.2 Khái niệm mô hình MVC 12

1.3 Kiến trúc của mô hình MVC 13

1.4 Đặc điểm của mô hình MVC 15

1.5 Mô hình MVC trong ASP.NET 15

1.5.1 Lịch sử phát triển của ASP.NET 16

1.5.2 Nhược điểm của ASP.NET 18

1.5.3 Sự ra đời của ASP.NET MVC 19

1.5.4 Đặc tính trong ASP.NET MVC 20

1.5.5 Lợi ích của mô hình ASP.NET MVC 21

1.5.6 So sánh ASP.NET MVC với ASP.NET 22

Trường Đại học Kinh tế Huế

Trang 5

CHƯƠNG 2: PHÂN TÍCH TÌNH HÌNH CÔNG TY 24

2.1 Tổng quan về công ty cổ phần HTL 24

2.1.1 Lịch sử hình thành 24

2.1.2 Quan điểm kinh doanh 25

2.1.3 Lĩnh vực hoạt động 26

2.1.4 Năng lực công ty 27

2.2 Cơ cấu tổ chức công ty cổ phần HTL 27

2.3 Mô tả chương trình ứng dụng 28

2.3.1 Khảo sát hiện trạng 28

2.3.2 Xác lập dự án 29

2.3.3 Quy trình hoạt động của Website 29

2.3.4 Quy trình nghiệp vụ 29

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG 30

3.1 Cài đặt mô hình MVC 30

3.1.1 Cài đặt chương trình 30

3.1.2 Tạo một Project với ASP.NET MVC 31

3.1.3 Tạo mới cơ sở dữ liệu 35

3.2 Xây dựng ứng dụng với ASP.NET MVC 36

3.2.1 Phân tích thiết kế hệ thống 36

3.2.1.1 Xác định yêu cầu hệ thống 36

3.2.1.2 Phân tích hệ thống 37

3.2.2 Phân tích thiết kế cơ sở dữ liệu 42

3.2.2.1 Liệt kê tất cả các danh từ liên quan đến bài toán 42

3.2.2.2 Loại bỏ những danh từ đồng nghĩa 42

Trường Đại học Kinh tế Huế

Trang 6

3.2.2.3 Xác định các thực thể và những thuộc tính tương ứng 43

3.2.2.4 Mối quan hệ giữa các thực thể 44

3.2.2.5 Xác định khoá chính cho từng thực thể 45

3.2.2.6 Sơ đồ thực thể mối quan hệ 45

3.2.2.7 Mô hình cơ sở dữ liệu 46

3.2.3 Xây dựng Controllers 46

3.2.4 Xây dựng Models 52

3.2.5 Xây dựng Views 54

3.3 Tìm hiểu định tuyến URL 58

3.3.1 Đường đi mặc định của ASP.NET MVC URL 58

3.3.2 Hệ thống định tuyến trong ASP.NET MVC 60

3.3.3 Các quy tắc định tuyến 60

3.4 Truy cập dữ liệu với LINQ 67

3.5 Bảo mật với ASP.NET MVC APPLICATION 68

3.6 Hình ảnh chức năng chính của Website 72

PHẦN C – KẾT LUẬN 78

1 Kết quả đạt được 78

2 Hạn chế của đề tài 79

3 Hướng phát triển 80

TÀI LIỆU THAM KHẢO 81

Trường Đại học Kinh tế Huế

Trang 7

DANH MỤC THUẬT NGỮ

Class: Lớp.

Graphical User Interface (GUI): Giao diện đồ họa người dùng.

GUI Component: Thành phần đồ họa người dùng.

Framework: Nền tảng.

Request: Yêu cầu.

Server: Máy chủ.

Client: Máy trạm.

Control: Đối tượng điều khiển.

Test Driven Development (TDD): Phát triển điều hướng.

Unit Test: Kiểm thử đơn vị.

Postback: Phản hồi.

Test: Kiểm thử.

Code: Mã lệnh.

Language Integrate Query (LINQ): Ngôn ngữ truy vấn tích hợp.

Solution: Các giải pháp cho dự án.

Redirect: Chuyển hướng.

Trường Đại học Kinh tế Huế

Trang 8

DANH MỤC CÁC BẢNG

1.1 Quá trình phát triển của ASP.NET 17

1.2 So sánh giữa ASP.NET Webform và ASP.NET MVC 23

3.1 Các loại Action Result 50

3.2 Action Method theo URL 63

3.2 Giao diện tạo Project mới 31

Trường Đại học Kinh tế Huế

Trang 9

3.3 Khởi tạo dự án 32

3.4 Giao diện Solution của MVC 32

3.5 Giao diện mẫu mô hình MVC 33

3.6 Tạo mới cơ sở dữ liệu 34

3.7 Biểu đồ phân rã chức năng 36

3.9 Mức 0 – Sơ đồ luồng dữ liệu 37

3.10 Mức 1 - Chức năng quản lý người dùng 38

3.11 Mức 1 - Chức năng quản lý bán hàng 38

3.12 Mức 1 - Chức năng quản lý sản phẩm 39

3.13 Mức 1 - Chức năng quản lý tin tức 40

3.14 Mức 1 - Chức năng thống kê 40

3.15 Mối quan hệ giữa các thực thể 43

3.16 Sơ đồ thực thể mối quan hệ 44

3.17 Mô hình cơ sở dữ liệu 45

3.18 Liên kết cơ sở dữ liệu 51

3.19 Mô hình hoạt động của MVC 52

3.20 Các MasterPage của Views 53

3.21 Giao diện trang LayoutSite.Master 54

Trường Đại học Kinh tế Huế

Trang 10

3.22 Giao diện trang Layoutadmin.Master 54

3.23 Trang quản lý Website 67

3.24 Trang đăng kí thành viên 69

3.25 Trang đăng nhập Website 71

3.36 Trang quản lý đơn hàng 76

Trường Đại học Kinh tế Huế

Trang 11

PHẦN A – MỞ ĐẦU

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

Ngày nay, việc giới thiệu sản phẩm ngày càng giữ một vai trò quan trọng tronghoạt động kinh doanh của Công ty, đặc biệt là các Công ty vừa và nhỏ Và khi côngnghệ thông tin ra đời, thì hoạt động giới thiệu nói chung và quản lý sản phẩm nói riêng

đã chuyển sang một phương pháp giới thiệu mới Thay vì giới thiệu bằng một số cáchphổ thông như trước đây, các Công ty đã đầu tư mạnh mẽ vào việc xây dựng trangWeb để giới thiệu sản phẩm Hiện nay việc thiết kế một trang Web ASP.NET rất dễdàng, chúng ta có thể tìm tài liệu trên mạng, tham khảo các Project để nghiên cứu vàxây dựng Bởi vì do Microsoft muốn tạo ra một công cụ để người sử dụng có thể dễdàng làm việc và xây dựng một trang Web nhanh chóng nhất, ASP.NET Webformđược thiết kế để thực hiện những điều đó

ASP.NET Webform được thiết kế để người dùng cảm thấy như mình đangthiết kế một chương trình Windows Form vậy, bằng cách kéo thả các Button, tự sinhCode HTML đơn giản, dễ hiểu… Chính vì thế nền tảng ASP.NET Webform dù đã rađời cách đây hơn 10 năm nhưng hiện nay vẫn đang sử dụng rộng rãi

Tuy nhiên ưu điểm của ASP.NET WebForm đôi khi lại chính là nhược điểmcủa nó, chính là không có sự phân chia rõ ràng giữa giao diện và Code xử lý, nên ngaytrong giao diện lại có câu lệnh truy vấn SQL Đến khi chúng ta cần thay thế hoặc nângcấp một chức năng nào đó thì rất rắc rối Để khắc phục những nhược điểm củaASP.NET Webform, năm 2007 Microsoft đã cho ra đời nền tảng ASP.NET MVC

ASP.NET MVC là một lựa chọn thay thế cho ASP.NET Webform, được xâydựng với 3 lớp chính: lớp dữ liệu (Models), lớp giao diện (Views) và lớp điều khiển(Controllers) Việc chia một trang Web thành nhiều lớp như thế này giúp cho nhữnglập trình viên có kinh nghiệm có thể xây dựng một Website với cấu trúc chặt chẽ, rõràng Với cấu trúc 3 lớp như thế này, việc nâng cấp hoặc thay thế một chức năng nào

đó trở nên hết sức dễ dàng, đồng thời việc kiểm thử cũng trở nên đơn giản hơn

Trường Đại học Kinh tế Huế

Trang 12

Với những ưu điểm trên, trong tương lai chắc chắn ASP.NET MVC sẽ là mộtnền tảng chính trong việc xây dựng và phát triển một Website ASP.NET Tuy nhiên vìđây là một công nghệ mới , nên tại Việt Nam hầu như chưa được áp dụng nhiều, cũng

có rất ít bạn sinh viên biết tới mô hình này Chính vì thế, em đã mạnh dạn chọn đề tài

“Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho Công ty cổphần HTL” để làm khóa luận tốt nghiệp cho mình

2 Mục tiêu nghiên cứu

Nghiên cứu mô hình MVC để ứng dụng vào việc xây dựng Website bán hàngcho Công ty cổ phần HTL dựa trên ngôn ngữ ASP.NET MVC:

+ Nghiên cứu mô hình MVC của Microsoft

+ Nghiên cứu ASP.NET MVC 3

+ Các ứng dụng của mô hình MVC

+ Thực trạng bán hàng của Công ty cổ phần HTL

+ Xây dựng Website bán hàng cho Công ty cổ phần HTL

3 Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu

+ Nghiên cứu ASP.NET MVC 3

+ Các ngôn ngữ lập trình Web như: ASP, HTML,CSS

+ Kiến thức về mô hình MVC

+ Ứng dụng của mô hình MVC

+ Quy mô hoạt động của Công ty cổ phần HTL

+ Quy trình hoạt động bán hàng của Công ty cổ phần HTL

Phạm vi nghiên cứu

+ Không gian: Công ty cổ phần HTL (25 Hai Bà Trưng – TP.Huế)

+ Thời gian: Trong khoảng 4 tháng (21/01/2013 - 12/05/2013)

Trường Đại học Kinh tế Huế

Trang 13

4 Phương pháp nghiên cứu

+ Phương pháp quan sát, tổng hợp

+ Phương pháp nghiên cứu tài liệu

+ Phương pháp phân tích, thiết kế

5 Kết cấu của đề tài

Ngoài phần Mở Đầu và phần Kết Luận ra, đề tài này còn được chia thành 3chương, trong đó:

Chương 1: Tổng quan về mô hình MVC

Xuất sứ của mô hình MVCKhái niệm mô hình MVCKiến trúc của mô hình MVCĐặc điểm của mô hình MVC

Mô hình MVC trong ASP.NET

Chương 2: Phân tích tình hình công ty

Truy cập dữ liệu với LINQBảo mật với ASP.NET MVCHình ảnh chức năng của Website

Trường Đại học Kinh tế Huế

Trang 14

PHẦN B – NỘI DUNG CHƯƠNG 1: TỔNG QUAN VỀ MÔ HÌNH MVC

1.1 Xuất xứ của mô hình MVC

Tất cả bắt đầu vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm XeroxParc ở Palo Alto Sự ra đời của giao diện đồ họa (Graphical User Interface) và lậptrình hướng đối tượng (Object Oriented Programming) cho phép lập trình viên làmviệc với những thành phần đồ họa như những đối tượng đồ họa có thuộc tính vàphương thức riêng của nó Không dừng lại ở đó, những nhà nghiên cứu ở Xerox Parccòn đi xa hơn khi cho ra đời cái gọi là kiến trúc MVC (viết tắt của Models – Views –Controllers)

MVC được phát minh tại Xerox Parc vào những năm 70, bởi TrygveReenskaug MVC lần đầu tiên xuất hiện công khai là trong Smalltalk-80 Sau đó trongmột thời gian dài hầu như không có thông tin nào về MVC, ngay cả trong tài liệu 80Smalltalk Các giấy tờ quan trọng đầu tiên được công bố trên MVC là “A Cookbookfor Using the Models -Views - Controllers User Interface Paradigm in Smalltalk-80”,bởi Glenn Krasner và Stephen Pope, xuất bản trong tháng 8 đến tháng 9 năm 1988

1.2 Khái niệm mô hình MVC

Kiến trúc MVC là việc chia tất cả mục của một ứng dụng ra làm ba thành phần(Component) khác nhau: Models, Views và Controllers

Models: Models được giao nhiệm vụ cung cấp dữ liệu cho cơ sở dữ liệu và lưu

dữ liệu vào các kho chứa dữ liệu Tất cả các nghiệp vụ Logic được thực thi ở Models

Dữ liệu vào từ người dùng sẽ thông qua Views được kiểm tra ở Models trước khi lưuvào cơ sở dữ liệu Việc truy xuất, xác nhận và lưu dữ liệu là một phần của Models

Views: Views hiển thị các thông tin cho người dùng của ứng dụng và được giao

nhiệm vụ cho việc nhận các dữ liệu vào từ người dùng, gửi đi các yêu cầu đến bộ điềukhiển, sau đó là nhận lại các phản hồi từ bộ điều khiển và hiển thị kết quả cho người

Trường Đại học Kinh tế Huế

Trang 15

dùng Các trang HTML, JSP, các thư viện và các file nguồn là một phần của thànhphần Views.

Controllers: Controllers là tầng trung gian giữa Models và Views Controllers

được giao nhiệm vụ nhận các yêu cầu từ phía máy khách Một yêu cầu được nhận từmáy khách được thực hiện bởi một chức năng Logic thích hợp từ thành phần Models

và sau đó sinh ra các kết quả cho người dùng và được thành phần Views hiển thị

1.3 Kiến trúc của mô hình MVC

Trong kiến trúc MVC, một đối tượng đồ họa người dùng (GUI Component) baogồm 3 thành phần cơ bản: Models, Views, và Controllers Model có trách nhiệm đốivới toàn bộ dữ liệu cũng như trạng thái của đối tượng đồ họa Views chính là thể hiệntrực quan của Models, hay nói cách khác chính là giao diện của đối tượng đồ họa VàControllers điều khiển việc tương tác giữa đối tượng đồ họa với người sử dụng cũngnhư những đối tượng khác

Hình 1.1: Các thành phần chính của mô hình MVCKhi người sử dụng hoặc những đối tượng khác cần thay đổi trạng thái của đốitượng đồ họa, nó sẽ tương tác thông qua Controllers của đối tượng đồ họa Controllers

sẽ thực hiện việc thay đổi trên Models Khi có bất kỳ sự thay đổi nào ở xảy ra ởModels, nó sẽ phát thông điệp (Broadcast Message) thông báo cho Views và

Trường Đại học Kinh tế Huế

Trang 16

Controllers biết Nhận được thông điệp từ Models, Views sẽ cập nhật lại thể hiện củamình, đảm bảo rằng nó luôn là thể hiện trực quan chính xác của Models CònControllers, khi nhận được thông điệp từ Models, sẽ có những tương tác cần thiết phảnhồi lại người sử dụng hoặc các đối tượng khác.

Hình 1.2: Mô hình tuần tự của MVCLấy ví dụ một GUI Component (thành phần đồ họa người dùng) đơn giản làCheckbox Checkbox có thành phần Models để quản lý trạng thái của nó là Check hayUncheck, thành phần Views để thể hiện nó với trạng thái tương ứng lên màn hình, vàthành phần Controllers để xử lý những sự kiện khi có sự tương tác của người sử dụnghoặc các đối tượng khác lên Checkbox

Khi người sử dụng nhấn chuột vào Checkbox, thành phần Controllers củaCheckbox sẽ xử lý sự kiện này, yêu cầu thành phần Models thay đổi dữ liệu trạng thái.Sau khi thay đổi trạng thái, thành phần Models phát thông điệp đến thành phần Views

và Controllers Thành phần Views của Checkbox nhận được thông điệp sẽ cập nhật lạithể hiện của Checkbox, phản ánh chính xác trạng thái Checkbox do Models lưu giữ

Trường Đại học Kinh tế Huế

Trang 17

Thành phần Controllers nhận được thông điệp do Models gởi tới sẽ có những tươngtác phản hồi với người sử dụng nếu cần thiết.

1.4 Đặc điểm của mô hình MVC

Cái lợi ích quan trọng nhất của mô hình MVC là nó giúp cho ứng dụng dễ bảotrì, Module hóa các chức năng, và được xây dựng nhanh chóng MVC tách các tác vụcủa ứng dụng thành các phần riêng lẽ Models, Views, Controllers giúp cho việc xâydựng ứng dụng nhẹ nhàng hơn Dễ dàng thêm các tính năng mới, và các tính năng cũ

có thể dễ dàng thay đổi MVC cho phép các nhà phát triển và các nhà thiết kế có thểlàm việc đồng thời với nhau MVC cho phép thay đổi trong một phần của ứng dụng

mà không ảnh hưởng đến các phần khác

Sở dĩ như vậy vì kiến trúc MVC đã tách biệt (Decoupling) sự phụ thuộc giữacác thành phần trong một đối tượng đồ họa, làm tăng tính linh động (Flexibility) vàtính tái sử dụng (Reusebility) của đối tượng đồ họa đó Một đối tượng đồ họa bấy giờ

có thể dễ dàng thay đổi giao diện bằng cách thay đổi thành phần Views của nó trongkhi cách thức lưu trữ (Models) cũng như xử lý (Controllers) không hề t hay đổi

Tương tự, ta có thể thay đổi cách thức lưu trữ (Models) hoặc xử lý (Controllers)của đối tượng đồ họa mà những thành phần còn lại vẫn giữ nguyên Chính vì vậy màkiến trúc MVC đã được ứng dụng để xây dựng rất nhiều Framework và thư viện đồhọa khác nhau Tiêu biểu là bộ thư viện đồ họa của ngôn ngữ lập trình hướng đốitượng Small Talk (cũng do Xerox Parc nghiên cứu và phát triển vào thập niên 70 củathế kỷ 20) Các Swing Components của Java cũng được xây dựng dựa trên kiến trúcMVC

1.5 Mô hình MVC trong ASP.NET

Như đã nói ở trên, mô hình MVC với những ưu điểm đã được ứng dụng nhiềutrên các nền tảng (Framework) khác nhau, trong đó có một nền tảng (Framework) nổitiếng được nhiều người biết đến và sử dụng đó là nền tảng (Framework) ASP.NETMVC Vậy ASP.NET MVC là gì?

Trường Đại học Kinh tế Huế

Trang 18

ASP.NET MVC là một nền tảng (Framework) phát triển ứng dụng Web mớicủa Microsoft, nó kết hợp giữa tính hiệu quả và nhỏ gọn của mô hình Models – Views

- Controllers (MVC), những ý tưởng và công nghệ hiện đại nhất, cùng với nhữngthành phần tốt nhất của nền tảng ASP.NET hiện thời Là một lựa chọn khác bên cạnhnền tảng Webform khi phát triển 1 ứng dụng Web sử dụng ASP NET

Trong phần này em sẽ trình bày lý do tại sao ASP.NET MVC được tạo ra, nó có

gì khác so với ASP.NET Webform, và cuối cùng là những cái mới trong ASP.NETMVC

Hình 1.3: Mô hình MVC

1.5.1 Lịch sử phát triển của ASP.NET

Để hiểu được những đặc điểm nổi bật và mục tiêu thiết kế của ASP.NETMVC, trước tiên cần coi lại lịch sử phát triển của Website ASP Trong số những nềntảng phát triển Web của Microsoft, chúng ta sẽ thấy sức mạnh và sự phức tạp tăng lêntheo từng năm Như trong bảng ta thấy mỗi nền tảng mới đều giải quyết những thiếu

Trường Đại học Kinh tế Huế

Trang 19

quyết những thiếu sót của ASP.NET Webform truyền thống, nhưng lại bằng cách nhấnmạnh sự đơn giản.

Bảng 1.1: Quá trình phát triển của ASP.NET

Thời kì Công nghệ Sức mạnh Điểm yếu

Thời kỳ đầu Common Gateway

Interface (CGI)

Đơn giản, linh hoạt

Lựa chọn duy nhất vàothời điểm này

Chạy ngoài Webserver, nên cầnnhiều tài nguyên(Cần các tiến trìnhriêng lẻ trên hệ điềuhàng cho mỗi lờiyêu cầu)

Thời kỳ tiếp

theo

Microsoft InternetDatabaseConnector (IDC)

Chạy trong Web Server Chỉ là đóng gói cho

những câu truy vấnSQL và Templatecho các kết quả cóđịnh dạng

1996 Active Server

Pages

Mục đích chung Thông dịch thời gian

thực hiện

2002/03 ASP.NET 1.0/1.1 Đã được biên dịch

Giao diện có trạng thái

Nặng nề trên băngthông HTML khónhìn

2004 ASP.NET 2.0 Cấu trúc lớn Xu hướng

lập trình hướng đốitượng

Không thể Test

ASP.NET truyền thống đã là một bước nhảy vọt khi lần đầu tiên xuất hiện,nhằm thu hẹp khoảng cách giữa phát triển WindowForm hướng đối tượng (có trạngthái) và phát triển Web hướng HTML (không có trạng thái) Hình sau minh họa công

Trường Đại học Kinh tế Huế

Trang 20

nghệ ASP.NET Webform trong lần đầu xuất hiện năm 2002

Hình 1.4: Mô hình ASP.NET WebformMicrosoft đã cố gắng che dấu HTTP (không trạng thái) và HTML ( vào thờiđiểm đó không thân thiện với nhiều người lập trình) bằng cách dùng mô hình giao diệnnhư một đối tượng điều khiển (Control) có cấu trúc hoạt động phía Server

Mỗi đối tượng điều khiển (Control) lưu giữ trạng thái qua các yêu cầu(Request) (sử dụng tính năng ViewState), tự động tạo ra mã HTML khi cần thiết, và tựđộng kết nối với các sự kiện phía Client (ví dụ như Click) với mã hồi đáp phía Server.Kết quả Webform là một lớp trừu tượng lớn nhằm chuyển giao diện có xử lý sự kiệnthông qua Web

1.5.2 Nhược điểm của ASP.NET

ASP.NET truyền thống đã từng là một ý tưởng hay, nhưng thực tế lại trở nênrắc rối Qua nhiều năm, sử dụng ASP.NET Webform cho thấy có một số nhược điểm:

- ViewState (trạng thái hiển thị): Kĩ thuật lưu giữ trạng thái qua các yêu cầu(Request) thường mang lại kết quả là những khối dữ liệu lớn được chuyển qua lại giữaClient và Server Nó có thể đạt hàng trăm Kilobytes trong nhiều dữ liệu thực, và nó điqua đi lại với mỗi lần yêu cầu (Request), làm những người truy cập vào trang Webphải chờ một thời gian dài khi họ Click một Button hoặc cố gắng di chuyển đến trang

Trường Đại học Kinh tế Huế

Trang 21

kế tiếp ASP.NET bị tình trạng này rất tồi tệ, Ajax là một trong các giải pháp được đưa

ra để giải quyết vấn đề này

- Page Life Cycle (chu kỳ sống của một trang Web): Kĩ thuật kết nối sự kiệnphía Client với mã xử lý sự kiện phía Server là một phần của Page Life Cycle, có thểcực kì rắc rối và mỏng manh Chỉ có một số ít lập trình viên thành công trong việc xử

lý hệ thống đối tượng điều khiển (Control) trong thời gian thực mà không bị lỗiViewState hoặc hiểu được rằng một số trình xử lý sự kiện không được kích họat mộtcách bí hiểm

- Limited Control Over HTML (giới hạn kiểm soát HTML): Server Control tựtạo ra nó như là mã HTML, nhưng không phải là mã HTML mà bạn muốn Ngoài việc

mã HTML của chúng thường không tuân theo tiêu chuẩn Web hoặc không sử dụng tốtCss mà hệ thống các Server Control còn tạo ra các giá trị ID phức tạp

- Untestable (kiểm chứng): Khi những người thiết kế của ASP.NET lần đầu tiêngiới thiệu nền tảng này, họ có thể đã không lường trước được là việc kiểm thử (Test)

tự động sẽ trở thành một công đoạn chính của việc phát triển phần mềm ngày nay.Không quá ngạc nhiên, cấu trúc mà họ đã thiết kế hoàn toàn không thích hợp với việckiểm thử (Test) tự động

ASP.NET tiếp tục bổ sung thêm các tính năng Phiên bản 2.0 thêm nhiều thànhphần (Component) chuẩn có thể giảm khá nhiều lệnh mà bạn cần phải tự viết AjaxRelease năm 2007 đã là phản hồi của Microsoft với phong trào Web 2.0/Ajax hồi đó,

hỗ trợ tương tác phía Client trong khi làm cho công việc của người lập trình đơn giảnhơn Phiên bản 3.5 là một bản nâng cấp nhỏ hơn, thêm hỗ trợ cho các tính năng của.NET 3.5 và các đối tượng điều khiển (Control) mới Tính năng ASP.NET DynamicData tạo ra các trang cho phép chỉnh sửa, liệt kê cơ sở dữ liệu một cách tự động

1.5.3 Sự ra đời của ASP.NET MVC

Vào tháng 11 năm 2007, ở hội thảo ALT.NET tại Austine - Texas, giám đốcđiều hành Scott Guthrie của Microsoft đã công bố và mô tả về nền tảng phát triển WebMVC mới, xây dựng trên ASP.NET, rõ ràng được thiết kế như là một lời hồi đáp thẳng

Trường Đại học Kinh tế Huế

Trang 22

vào các lời chỉ trích trước đây.

ASP.NET MVC cung cấp sự tách biệt rõ ràng giữa các thành phần bất chấpviệc sử dụng lại mô hình MVC mặc dù nó không có gì mới – MVC lần đầu được công

bố vào năm 1978 trong dự án Smalltalk của Xerox Parc Nhưng ngày nay nó phổ biếnnhư là một kiến trúc cho các ứng dụng Web bởi vì các lý do sau:

- Người dùng tương tác với ứng dụng MVC tự nhiên sẽ theo một chu trình :người dùng thực hiện một hành động, và để hồi đáp lại , ứng dụng thay đổi mô hình dữliệu của nó và chuyển một trang đã được cập nhật cho người dùng, và sau đó vòngxoay lập lại Điều này là thích hợp cho một ứng dụng Web phải luân chuyển hàng loạtcác lời yêu cầu cũng như hồi đáp

- Những ứng dụng Web luôn cần phải kết hợp một số công nghệ (về cơ sở dữliệu, HTML và mã xử lý), luôn chia thành nhiều lớp, và những mẫu đề ra đã nảy sinhthành các khái niệm trong MVC ASP.NET MVC thực thi một biến thể hiện đại trênMVC mà đặc biệt thích hợp với các ứng dụng Web

1.5.4 Đặc tính trong ASP.NET MVC

Hình 1.5: Nền tảng ASP.NET MVC Framwork

Trường Đại học Kinh tế Huế

Trang 23

Tách rõ ràng các mối liên quan, mở khả năng Test-TDD (Test DrivenDeveloper) Có thể Test Unit trong ứng dụng mà không cần phải chạy Controllerscùng với tiến trình của ASP.NET và có thể dùng bất kỳ một Unit Testing Frameworknào như NUnit, MBUnit, MSTest, v.v…

Có khả năng mở rộng mọi thứ trong MVC được thiết kế cho phép dễ dàng thaythế/tùy biến Bao gồm một ánh xạ URL mạnh mẽ cho phép xây dựng ứng dụng vớinhững URL sạch, các URL không cần CS phần mở

ASP.NET MVC Framework cũng hỗ trợ những file ASP.NET như: ASPX.ASCX và Master, đánh dấu các tập tin này như một “View Template” (có thể dễ dàngdùng các tính năng của ASP.NET như lồng các trang Master, <%= %> Snippets, mô tảServer Controls, Template, Data-Binding, Localization, v.v… ) Tuy nhiên sẽ khôngcòn Postback và Interactive Back Server và thay vào đó là Interactive End User tớimột Controller Class (không còn Viewstate, Page Life Cycle)

ASP.NET MVC Framework hỗ trợ đầy đủ các tính năng bảo mật của ASP.NETnhư Forms / WindowsAuthenticate, URL Authorization, v.v…

1.5.5 Lợi ích của mô hình ASP.NET MVC

ASP.NET MVC có nhiều lợi ích giúp cho người lập trình tiện sử dụng:

- Hỗ trợ kết hợp rất tốt giữa người lập trình và người thiết kế giao diện

- Sử dụng các tính năng tốt nhất đã có của ASP.NET

Trường Đại học Kinh tế Huế

Trang 24

1.5.6 So sánh ASP.NET MVC với ASP.NET

Bạn đã được nghe qua về điểm yếu và giới hạn của ASP.NET Webform truyềnthống, và làm thế nào mà ASP.NET MVC vượt qua những vấn đề này Điều đó không

có nghĩa là ASP.NET Webform đã chết mà chỉ là Microsoft muốn mọi người hiểurằng có hai nền tảng song song nhau, hỗ trợ cho nhau, và cả hai đều là đối tượng choviệc phát triển hiện tại Nói chung, việc bạn chọn lựa giữa hai mô hình còn tùy vàohoàn cảnh

ASP.NET WebForm mang tới một trang Web mà giao diện có thể lưu giữ trạngthái , và cuối cùng thêm vào một lớp trừu tượng tinh vi nằm trên HTTP và HTML, sửdụng ViewState và Postback để tạo ra hiệu ứng của việc có trạng thái Điều này thíchhợp với phong cách phát triển kéo và thả của WindowForm, tức là bạn đặt các đốitượng có giao diện lên trang và mã xử lý vào trình xử lý sự kiện của chúng

MVC hòa vào bản chất không trạng thái của HTTP , làm việc chung với nó hơn

là chống lại Điều này yêu cầu bạn phải hiểu thật sự cách làm việc của một ứng dụngWeb, để đạt được điều đó, MVC cung cấp một cách tiếp cận đơn giản, mạnh mẽ vàhiện đại cho việc viết các ứng dụng Web với mã có trật tự mà dễ dàng để kiểm thử(Test) và bảo trì sau này, giải phóng những phức tạp khó chịu và các giới hạn khôngđáng có

Điều đặc biệt là ASP NET MVC có mã nguồ n mở, không giống các nềntảng trước đó, bạn có thể dễ dàng tải mã nguồn gốc của ASP.NET MVC, thậmchí bạn có thể sửa đổi và tạo ra phiên bản của riêng bạn

Có những tình huống mà ASP.NET Webform khá tốt thậm chí còn tốt hơnASP.NET MVC Ví dụ như các ứng dụng nhỏ, nội bộ mà trực tiếp kết nối thẳng vàocác bảng cơ sở dữ liệu hoặc dẫn người sử dụng thông qua các trình hướng dẫn tự động(Wizard) Vì thế sẽ không cần phải lo lắng về băng thông do ViewState, không dínhdáng tới vấn đề tối ưu hóa hệ thống tìm kiếm, và không bị làm phiền về việc kiểm thử(Test) và bảo trì lâu dài

Trường Đại học Kinh tế Huế

Trang 25

Nhưng mặt khác, nếu bạn viết một ứng dụng trên Internet, hoặc các ứng dụngnội bộ lớn hơn, bạn sẽ hướng tới tốc độ Download nhanh và tương thích trình duyệtchéo, được xây dựng với chất lượng cao hơn, mã kiến trúc tốt thích hợp cho việc Test

tự động, trong trường hợp đó ASP.NET MVC sẽ mang lại những ưu điểm quan trọng

Bảng 1.2: So sánh giữa ASP NET Webform và ASP.NET MVC

Kiến trúc

chương trình

Kiến trúc mô hìnhWebform>Business-> Database

Kiến trúc sử dụng việc phânchia chương trình thànhControllers, Models, Views

Cú pháp

chương trình

Sử dụng cú pháp Webform, tất cảcác sự kiện và Control do Server

quản lý

Các sự kiện được điều khiểnbởi Controllers, các Controlkhông do Server quản lý

Truy cập dữ

liệu

Sử dụng hầu hết các công nghệtruy cập dữ liệu trong ứng dụng

Phần lớn dùng LINQ to SQLClass để tạo mô hình truy cập

đối tượng

Debug Debug chương trình phải thực

hiện tất cả bao gồm các lớp truycập dữ liệu, sự hiển thị, điềukhiển các Controls

Debug có thể sử dụng các UnitTest kiểm tra các phương thức

Trường Đại học Kinh tế Huế

Trang 26

Javascrip Tương tác với Javascrip

khó khăn vì c ác controls đượcđiều khiển bởi ser ver

Tương tác với Javascrip dễ

CHƯƠNG 2: PHÂN TÍCH TÌNH HÌNH CÔNG TY

2.1 Tổng quan về công ty cổ phần HTL

2.1.1 Lịch sử hình thành

Công ty cổ phần HTL được thành lập vào ngày 01/01/2009 dựa trên việc nângcấp và tổ chức lại cơ sở sửa chữa thiết bị tin học cùng tên, được sở kế hoạch và Đầu tưThừa Thiên Huế cấp phép số 3300530282 Ngoài công việc sửa chữa, công ty bắt đầubày bán các thiết bị tin học văn phòng – viễn thông và giới thiệu về các dịch vụ màcông ty cung cấp Ngày 01/05/2010 công ty bắt đầu chuyển trụ sở chính từ 31 LýThường Kiệt – TP Huế về 25 Hai Bà Trưng – TP Huế và kinh doanh ổn định từ đó chođến nay Công ty luôn duy trì được tốc độ tăng trưởng ở mức độ cao và vững chắc trênmọi mặt Luôn chiếm được sự tin tưởng của khách hàng trong tỉnh bởi các chính sách,cam kết, dịch vụ…mà rất nhiều công ty máy tính khác không làm được

Tổng nguồn vốn hiện tại của Công ty cổ phần HTL là 12,5 tỷ đồng và có 3 cổđông chính là giám đốc và hai phó giám đốc của Công ty Số lượng nhân viên chínhthức tính đến ngày 01/04/2013 của Công ty cổ phần HTL là 25 nhân viên cùng với đó

là 10 nhân viên đang trong quá trình thử việc Đến thời điểm này, công ty đã bày bánhơn 100 sản phẩm khác nhau, đa số là các mặt hàng như Laptop, máy tính bàn, linhkiện điện tử và các thiết bịphụ trợ khác

Trường Đại học Kinh tế Huế

Trang 27

Hình 2.1: Logo Công ty cổ phần HTLCông ty cổ phần máy HTL có một đội ngũ nhân viên hùng hậu với trình độchuyên môn rất cao Nhân viên bán hàng chuyên nghiệp, am hiểu kỹ thuật và luôn làmhài lòng khách hàng, nhân viên kỹ thuật chuyên môn cao, được huấn luyện bài bản, đủkhả năng đáp ứng mọi yêu cầu khắt khe của Quý khách hàng Hơn thế nữa, đội ngũnhân viên của Công ty đều thấu hiểu: “Khách hàng mới là người quyết định tương lai,

sự tồn tại và phát triển của Công ty” Do đó, toàn thể nhân viên của Công ty luôn tâmniệm và làm việc theo suy nghĩ: “Hãy phục vụ khách hàng như phục vụ chính bản thânmình”

2.1.2 Quan điểm kinh doanh

1 Xây dựng và phát triển vững chắc nền tảng hoạt động quản trị công ty:Thông qua việc từng bước rà soát và xây dựng – ban hành các quy trình quy định để tổchức vận hành

2 Tuyển chọn và sàng lọc đánh giá đội ngũ cán bộ - nhân viên để đào tạo nângcao năng lực nghiệp vụ quản lý điều hành qua đó có đội ngũ cán bộ quản lý điều hành

kế cận và dự phòng

3 Đào tạo tập huấn cho cán bộ - nhân viên Công ty nâng cao năng lực nghiệp

vụ - kỹ năng bán hàng, kỹ năng quản lý điều hành

4 Thay đổi quan điểm về khách hàng với phương châm phục vụ: “Khách hàng

là khách quý; Nhà cung cấp, nhà phân phối là bạn thân”

Trường Đại học Kinh tế Huế

Trang 28

5 Trung thực với đồng nghiệp với cấp trên và với khách hàng; Cam kết và thựchiện đúng về chất lượng, thời gian giao hàng, bảo hành, hỗ trợ khách hàng, và giảiquyết khiếu nại thỏa đáng hài hòa quyền lợi khách hàng và công ty.

6 Giao tiếp trong nội bộ công ty và với cộng đồng bên ngoài công ty, theo cácchuẩn mực của công ty

2.1.3 Lĩnh vực hoạt động

Thành lập từ năm 2009, Công ty tham gia vào thị trường bán hàng với hìnhthức kinh doanh bán lẻ, phân phối thông qua các trung tâm thương mại và siêu thịCNTT ngành nghề kinh doanh: Sửa chữa và lắp ráp máy vi tính, Mua bán linh kiệnmáy vi tính và thiết bị văn phòng, Bán lẽ máy tính Tư vấn và triển khai các dự án hoạtđộng viễn thông kết nối không; Bán lẻ máy vi tính, Thiết bị ngoại vi, Phần mềm vàthiết bị viễn thông; Bán lẽ thiết bị nghe nhìn; Hoạt động viễn thông không dây

Với gian hàng sản phẩm CNTT tự chọn mong muốn đem lại nhiều lợi ích vàtiện dụng cho khách hàng mua sắm và lựu chọn các sản phẩm vừa ý mình khi đếnCông ty mua sắm Với phương châm phục vụ tốt khách hàng, nâng cao chất lượngdịch vụ và hậu mãi sau bán hàng, Công ty tập trung đầu tư các trung tâm bảo hành -dịch vụ sữa chữa để tạo nhiều điều kiện thuận lợi dễ dàng cho khách hàng bảo hành -sữa chữa

Ngoài những lĩnh vực hoạt động ở trên, Công ty còn hoạt động khác như:

- Xây dựng và thiết kế các sản phẩm phần mềm quản lý và Website cho: Kháchsạn, Nhà hàng, Doanh nghiệp, và Các cơ quan, Trường học…

- Thiết kế và lắp đặt mạng nội bộ, mạng Internet không dây (WIFI)

- Dịch vụ bảo trì, bảo dưỡng máy tính cho các đơn vị, cá nhân…

- Thiết kế trang trí nội ngoại thất, và hoàn thiện công trình : văn phòng, kháchsạn, nhà hàng, Showroom, Bar, Coffee, Karaoke, nhà ở…

Trường Đại học Kinh tế Huế

Trang 29

2.1.4 Năng lực công ty

Chuyên mua bán, kinh doanh các thiết bị tin học văn phòng, viễn thông Có thểthực hiện thiết kế mạng nội bộ từ 50 trở lên máy tính được kết nối và chia sẽ dự liệuvới nhau như: Phần mềm kế toán, Dữ liệu sử dụng chung, bảo mật và có sự phân chiaquyền truy cập dữ liệu linh động

Thiết kế mạng Internet không dây (WIFI) cho các khách sạn nhà hàng lớn vớichi phí thấp, tiết kiệm, hiệu quả và tính mỹ thuật cao, giúp kết nối Internet được dễdàng hơn

Khảo sát, tư vấn và lắp đặt các hệ thống mạng: Games, LAN, Internet, WAN,Camera quan sát

Cài đặt phần mềm, sửa chữa phần cứng Desktop, Laptop, máy in, máyPhotocopy, máy Fax, máy chiếu, Mainboard, LCD…

2.2 Cơ cấu tổ chức công ty cổ phần HTL

Hình 2.2: Cơ cấu tổ chức công ty

Trường Đại học Kinh tế Huế

Trang 30

Giám đốc: Ông Nguyễn Thanh Hải – là người có quyền cao nhất, quản lý, điều

hành và chịu mọi trách nhiệm về hoạt động kinh doanh của công ty

Phó giám đốc: là người được giám đốc ủy quyền và phân công quản lý các bộ

phận của công ty, chủ động giải quyết các vấn đề của công ty trong quyền hạn chophép

Bộ phận kinh doanh: là bộ phận có chức năng quản lý các hoạt động bán hàng

và cung cấp dịch vụ của công ty, quản lý việc đặt hàng, quản lý thông tin khách hàng

Bộ phận kế toán: là bộ phận có chức năng kiểm tra và giám sát mọi hoạt động

tài chính của công ty, tính toán, lập báo cáo tài chính

Bộ phận kĩ thuật: là bộ phận có chức năng sửa chữa các trang thiết bị tin học –

viễn thông Láp ráp các thiết bị mới nhập

Bộ phận kho hàng: là bộ phận có chức năng quản lý, giám sát việc xuất nhập

các sản phẩm và các trang thiết bị trong kho hàng của công ty

2.3 Mô tả chương trình ứng dụng

2.3.1 Khảo sát hiện trạng

Bộ phận kinh doanh của công ty là một phòng chức năng thuộc Công ty cổphần HTL Có chức năng cung cấp các thông tin, sản phẩm và nhiều hoạt động khácnữa Website của Công ty sẽ là nơi bán hàng, giới thiệu thông tin về sản phẩm và dịch

vụ của Công ty đến với khách hàng, khai thác số lượng khách hàng đông đảo trênmạng Internet

Giao diện trang Web phải trực quan, dễ nhìn và đem lại cảm giác thuận tiện chongười sử dụng Khách hàng hay nhân viên của Công ty không cần phải biết nhiều vềtin học để sử dụng và thao tác trên trang web

Ngoài chức năng chính là bán hàng, Website sẽ là bước đệm để tiến tới mụctiêu xây dựng một hệ thống quản lý chung trên nền Web Các công việc như kế toán,quản lý nhân viên, quản lý thông tin khách hàng và đối tác, quản lý hàng hóa sẽ đượctích hợp vào trang web và sử dụng một cơ sở dữ liệu tập trung Chỉ cần mạng Internet

Trường Đại học Kinh tế Huế

Trang 31

và một thiết bị cho phép duyệt web thì người quản lý và nhân viên của Công ty có thểgiám sát và làm việc ở bất cứ khi nào và bất cứ nơi đâu hay khách hàng có thể đặthàng từ chính điện thoại của mình.

Nhằm minh họa cho phần giới thiệu lý thuyết về ASP.NET MVC, và qua thực

tế trang Web của Công ty còn nhiều hạn chế Em đã tìm hiểu và chọn đề tài “Ứngdụng xây dựng Website bán hàng dựa trên mô hình ASP.NET MVC” nhằm mục đíchgiúp quảng bá thương hiệu của Công ty ngày càng phát triển

2.3.2 Xác lập dự án

Việc đăng ký mua hàng của Công ty có quy mô nhỏ, nhưng phức tạp Vì thế,trang Web trình ứng dụng này (được xây dựng với mục tiêu là minh họa cho các lýthuyết được nêu ra ở trên), em sẽ giới hạn lại độ phức tạp của trang Web Người dùngsau khi đăng ký thì sẽ thực hiện việc mua hàng, và Công ty sẽ thực hiện việc xác nhậnthông tin và cung cấp xác nhận cho người dùng

2.3.3 Quy trình hoạt động của Website

- Về phía công ty:

+ Quản lý việc cập nhật sản phẩm, thông tin khác

+ Quản lý việc đăng ký mua người dùng

- Về phía người dùng:

+ Tiến hành chọn lựa sản phẩm và dịch vụ theo nhu cầu

+ Tiến hành điền các thông tin cần thiết và cập nhập thông tin

2.3.4 Quy trình nghiệp vụ

Quy trình đăng kí mua sản phẩm Quy trình xác nhận mua sản phẩm

Trường Đại học Kinh tế Huế

Trang 32

- Sau đó chúng ta cần phải cài đặt bộ Visual Studio 2010 hoặc 2012 (trong bài

Trường Đại học Kinh tế Huế

Trang 33

Khóa Luận này em sử dụng Visual Studio 2012) và bộ SQL Server 2008 hoặc 2012(trong bài Khóa Luận này em sử dụng SQL Server 2012).

Bộ Visual Studio chưa tích hợp sẵn ASP.NET MVC 3 nên chúng ta cũng cầnphải cài đặt nền tảng ASP.NET MVC 3 Web Application để có thể sử dụng được

Hình 3.1: Cài đặt ASP.NET MVC 3

3.1.2 Tạo một Project với ASP.NET MVC

Sau khi chúng đã cài đặt xong bộ Visual Studio, để khởi tạo một dự án MVC, tachọn File => New => Project Ta chọn ngôn ngữ Visual C#, ta chọn tiếp ứng dụngWeb, chọn tiếp ASP.NET MVC 3 Web Application Ta có thể đặt lại tên Project hoặcnơi lưu trữ tùy vào chúng ta rồi nhấn nút OK

Trường Đại học Kinh tế Huế

Trang 34

Hình 3.2: Giao diện tạo Project mớiHộp hội thoại New ASP.NET MVC 3 Project xuất hiện Ở phần Select aTemplate ta chọn Internet Application, ở View engine ta chọn Razor, ở phần UseHTML 5 semantic markup và phần Create a unit test project thì ta bỏ trống Cuối cùng

ta nhấn nút OK để tạo mới

Trường Đại học Kinh tế Huế

Trang 35

Hình 3.3: Khởi tạo dự ánSau khi ASP.NET MVC Web Application được tạo, nhìn vào Solution Explorer

sẽ thấy 3 thư mục xuất hiện: Models, Views, Controllers chứa các đối tượng tươngứng với các thành phần Models, Views, Controllers trong mô hình MVC Chươngtrình sẽ tạo cho chúng ta một ứng dụng Web MVC mẫu như sau:

Hình 3.4: Giao diện Solution của MVC

Trường Đại học Kinh tế Huế

Trang 36

Chạy ứng dụng bằng cách nhấn F5 Nếu là ứng dụng chạy lần đầu thì sẽ cóthông báo hỏi có cho mở ở chế độ Debug hay không? Nếu đồng ý chọn “Modify theWeb.config file to enable de bugging”, không muốn Debug chọn “Run withoutdebugging” Trong các phần sau chúng ta sẽ tìm hiểu rõ hơn cách thức hoạt động của

mô hình MVC trong ASP.NET

Hình 3.5: Giao diện mẫu mô hình MVCCấu trúc thư mục mặc định của ứng dụng ASP.NET MVC gồm có 3 thư mụcchính: Models, Views, Controllers ASP.NET MVC khuyến khích việc đưa những lớp(Class) điều khiển vào bên trong thư mục /Controllers, những lớp (Class) thuộc về

mô hình dữ liệu vào bên trong thư mục / Models, và những gì liên quan đến giao diệnvào thư mục / Views Mặc dù ASP.NET MVC Framework không bắt buộc chúng taphải sử dụng cấu trúc này, nhưng đây là cấu trúc mặc định khi chúng ta tạo một dự án(Project) mới và ASP NET MVC luôn luôn khuyến khích việc sử dụng nó để phânchia ứng dụng Ngoại trừ trường hợp ta đề ra một lý do đủ thuyết phục để thay đổi nó

Trường Đại học Kinh tế Huế

Trang 37

3.1.3 Tạo mới cơ sở dữ liệu

Chúng ta tạo mới một cơ sở dữ liệu bằng cách: kích chuột phải vào Databaseschọn New Database Đặt tên cơ sở dữ liệu tại Database name, chọn nơi lưu trữ tạiDatabase files, tại Owner chúng ta chọn Server tên máy chúng ta(nếu đăng nhập bằngquyền sa thì chon sa).Sau đó chọn OK để hoàn thành việc tạo mới cơ sở dữ liệu

Hình 3.6: Tạo mới cơ sở dữ liệu

Trường Đại học Kinh tế Huế

Trang 38

3.2 Xây dựng ứng dụng với ASP.NET MVC

3.2.1 Phân tích thiết kế hệ thống

3.2.1.1 Xác định yêu cầu hệ thống

Đối với khách hàng

- Hiển thị thông tin giới thiệu

- Gửi thông tin liên hệ

- Hiển thị tất cả sản phẩm

- Hiển thị sản phẩm theo danh mục

- Hiển thị số lượng truy cập

- Đăng ký thành viên

- Tạo, sửa, xóa giỏ hàng

- Tạo và gửi đơn đặt hàng

Trang 39

3.2.1.2 Phân tích hệ thống

Biểu đồ phân rã chức năng

Hình 3.7: Biểu đồ phân rã chức năng

Biểu đồ dòng dữ liệu

Hình 3.8: Mức ngữ cảnh

Trường Đại học Kinh tế Huế

Trang 40

Hình 3.9: Mức 0 – Sơ đồ luồng dữ liệu

Trường Đại học Kinh tế Huế

Ngày đăng: 19/10/2016, 15:52

HÌNH ẢNH LIÊN QUAN

Hình 1.3: Mô hình MVC - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 1.3 Mô hình MVC (Trang 18)
Hình 2.3: Quy trình nghiệp vụ - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 2.3 Quy trình nghiệp vụ (Trang 32)
Hình 3.7: Biểu đồ phân rã chức năng - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.7 Biểu đồ phân rã chức năng (Trang 39)
Hình 3.9: Mức 0 – Sơ đồ luồng dữ liệu - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.9 Mức 0 – Sơ đồ luồng dữ liệu (Trang 40)
Hình 3.10: Mức 1 - Chức năng quản lý người dùng - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.10 Mức 1 - Chức năng quản lý người dùng (Trang 41)
Hình 3.12: Mức 1 - Chức năng quản lý sản phẩm - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.12 Mức 1 - Chức năng quản lý sản phẩm (Trang 42)
Hình 3.13: Mức 1 - Chức năng quản lý tin tức - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.13 Mức 1 - Chức năng quản lý tin tức (Trang 43)
Hình 3.15: Mối quan hệ giữa các thực thể - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.15 Mối quan hệ giữa các thực thể (Trang 46)
Hình 3.17: Mô hình cơ sở dữ liệu - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.17 Mô hình cơ sở dữ liệu (Trang 48)
Hình 3.21: Giao diện trang LayoutSite.Master - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.21 Giao diện trang LayoutSite.Master (Trang 57)
Hình 3.25: Trang đăng kí thành viên Đây là lớp đăng nhập - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.25 Trang đăng kí thành viên Đây là lớp đăng nhập (Trang 72)
Hình 3.26: Trang đăng nhập Website - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.26 Trang đăng nhập Website (Trang 74)
Hình 3.28: Trang giới thiệu - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.28 Trang giới thiệu (Trang 75)
Hình 3.32: Trang đăng kí - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.32 Trang đăng kí (Trang 77)
Hình 3.34: Trang quản lý Trang Thêm Sản Phẩm: người quản trị sẽ thêm các sản phẩm vào trang này. - Nghiên cứu mô hình MVC và ứng dụng xây dựng website bán hàng cho công ty cổ phần HTL
Hình 3.34 Trang quản lý Trang Thêm Sản Phẩm: người quản trị sẽ thêm các sản phẩm vào trang này (Trang 78)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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