ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
ĐỒ ÁN TỐT NGHIỆP
KHOA ĐIỆN – ĐIỆN TỬ
NGÀNH CÔNG NGHỆ THÔNG TIN
Tên đề tài:
Xây dựng trang tin tức phòng công tác học sinh
sinh viên trường Đại Học Sư Phạm Kỹ Thuật
Giảng viên hướng dẫn: Th.S. ĐỖ PHÚ HUY
Sinh viên thực hiện : NGUYỄN VĂN CƯỜNG 161250533205
: NGUYỄN DUY HƯNG 161250533319
Đà Nẵng, tháng 5 năm 2019
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
ĐỒ ÁN TỐT NGHIỆP
KHOA ĐIỆN – ĐIỆN TỬ
NGÀNH CÔNG NGHỆ THÔNG TIN
Tên đề tài:
Xây dựng trang tin tức phòng công tác học sinh
sinh viên trường Đại Học Sư Phạm Kỹ Thuật
Giảng viên hướng dẫn: Th.S. ĐỖ PHÚ HUY
Sinh viên thực hiện : NGUYỄN VĂN CƯỜNG 161250533205
: NGUYỄN DUY HƯNG 161250533319
Đà Nẵng, tháng 5 năm 2019
LỜI MỞ ĐẦU
Ngày nay cuộc cách mạng công nghiệp 4.0 đang diễn ra và không ai có thể đứng ngoài
cuộc. Cách mạng công nghiệp 4.0 hội tụ nhiều công nghệ, trong đó cốt lõi là công nghệ
thông tin. Công nghệ thông tin xuất hiện trong hầu khắp các lĩnh vực như: kinh tế 4.0,
dịch vụ thông minh, nông nghiệp thông minh 4.0, y tế thông minh 4.0, giáo dục thông
minh 4.0, giao thông thông minh 4.0
Với sự hướng dẫn tận tình của ThS Đỗ Phú Huy, chúng em đã hoàn thành đồ án tốt
nghiệp này. Tuy đã cố gắng hết sức tìm hiểu, phân tích thiết kế và cài đặt hệ thống nhưng
không thể tránh khỏi những thiếu sót. Chúng em rất mong nhận được sự thông cảm và
góp ý của quý Thầy cô.
Chúng em xin chân thành cảm ơn!
LỜI CẢM ƠN
Chúng em xin gửi lời cảm ơn chân thành và sâu sắc tới ThS Đỗ Phú Huy đã hướng dẫn,
giúp đỡ chúng em trong suốt thời gian thực hiện đề tài.
Chúng em xin chân thành cảm ơn thầy cô bộ môn đã tận tình giảng dạy, truyền đạt kiến
thức cho chúng em trong các học kỳ vừa qua.
Xin chân thành cảm ơn tất cả bạn bè đã động viên, giúp đỡ chúng em trong thời gian học
tập và hoàn thành đồ án.
Mặc dù đã cố gắng nhiều nhưng sẽ không thể tránh khỏi những thiếu sót. Chúng em kính
mong nhận được sự góp ý của quý Thầy Cô và các bạn để hoàn thành tốt hơn nữa.
Sinh viên thực hiện
Nguyễn Văn Cường
Nguyễn Duy Hưng
LỜI CAM ĐOAN
Chúng tôi xin cam đoan:
Những nội dung trong luận văn này do chúng em thực hiện dưới sự hướng dẫn của ThS
Đỗ Phú Huy
Mọi tham khảo trong luận văn đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời
gian, địa điểm công bố.
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, chúng em xin chịu
hoàn toàn trách nhiệm.
Sinh viên thực hiện
Nguyễn Văn Cường
Nguyễn Duy Hưng
NHẬN XÉT
.............................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
.....................................................................................................................................
Mục lục
CHƯƠNG 1: Cơ sở lý thuyết..................................................................................9
1.
Hệ quản trị cơ sở SQL Server........................................................................9
a.
Giới thiệu về SQL Server...........................................................................9
b.
Lịch sử ra đời SQL Server và các phiên bản:...........................................10
c.
Các thành phần cơ bản của SQL Server:..................................................10
2.
Ngôn ngữ lập trình.......................................................................................12
a.
ASP.NET core..........................................................................................12
b.
Mô hình MVC trong ASP.NET Core.......................................................14
CHƯƠNG 2: Tổng quan hệ thống........................................................................17
1.
Tính cấp thiết...............................................................................................17
2.
Phân tích bài toán........................................................................................17
3.
Phạm vi đề tài..............................................................................................18
4.
Phương pháp nghiên cứu.............................................................................18
5.
Sơ đồ Use-Case...........................................................................................18
6.
Đặc tả Use-case...........................................................................................19
a.
Đăng Nhập................................................................................................19
b.
Tạo tài khoản............................................................................................20
c.
Đổi mật khẩu............................................................................................21
d.
Cập nhật thông tin tài khoản.....................................................................22
e.
Tạo bài đăng.............................................................................................23
f.
Chỉnh sửa bài đăng...................................................................................24
g.
Xóa bài đăng.............................................................................................25
h.
Tìm kiếm bài đăng....................................................................................26
7.
Sơ đồ ERD...................................................................................................27
8.
Class Diagram.............................................................................................28
9.
Active Diagram...........................................................................................29
9.2 Active Diagram Đăng Bài..............................................................................29
9.3 Active Diagram Duyệt Bài.............................................................................30
9.4 Active Diagram Tìm Kiếm.............................................................................31
10. Sequence Diagram.......................................................................................31
10.1 Sequence Diagram Đăng Nhập....................................................................31
10.2 Sequence Diagram Đăng Bài.......................................................................32
10.3 Sequence Diagram Duyệt Bài......................................................................32
10.4 Sequence Diagram Tìm Kiếm......................................................................32
CHƯƠNG 3: Thiết kế hệ thống............................................................................33
1.
2.
Thết kế bảng................................................................................................33
a.
Bảng User.................................................................................................33
b.
Bảng Forums............................................................................................34
c.
Bảng Posts................................................................................................34
d.
Bảng PostReplies......................................................................................35
e.
Bảng Forms..............................................................................................35
Sơ đồ Relationship.......................................................................................36
CHƯƠNG 4: Kết quả chạy chương trình..............................................................37
1.
Trang chủ.....................................................................................................37
2.
Danh Sách Tin.............................................................................................38
3.
Nội Dung Bài...............................................................................................39
4.
Trang Admin...............................................................................................40
5.
Trang đăng bài.............................................................................................40
6.
Trang duyệt bài............................................................................................41
CHƯƠNG 1:
CƠ SỞ LÝ THUYẾT
1. Hệ quản trị cơ sở SQL Server
a.
Giới thiệu về SQL Server
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database
Management System (RDBMS)) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi dữ
liệu giữa máy Client và máy cài SQL Server. Một RDBMS bao gồm databases, database
engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong
RDBMS.
SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very
Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng
ngàn user. SQL Server có thể kết hợp “ăn ý” với các server khác như Microsoft Internet
Information Server (IIS), E-Commerce Server, Proxy Server…
Một vài ấn bản SQL Server:
Enterprise: chứa tất cả cá đặc điểm nổi bật của SQL Server, bao gồm nhân
bộ máy cơ sở dữ liệu và các dịch vụ đi kèm cùng với các công cụ cho tạo và quản lý phân
cụm SQL Server. Nó có thể quản lý các CSDL lớn tới 524 petabytes và đánh địa chỉ
12 terabytes bộ nhớ và hỗ trợ tới 640 bộ vi xử lý (các core của cpu).
Standard: Rất thích hợp cho các công ty vừa và nhỏ vì giá thành rẻ hơn
nhiều so với Enterprise Edition, nhưng lại bị giới hạn một số chức năng cao cấp
(advanced features) khác, edition này có thể chạy tốt trên hệ thống lên đến 4 CPU và 2
GB RAM.
Developer: Có đầy đủ các tính năng của Enterprise Edition nhưng được chế
tạo đặc biệt như giới hạn số lượng người kết nối vào Server cùng một lúc…. Ðây là phiên
bản sử dụng cho phát triển và kiểm tra ứng dụng. Phiên bản này phù hợp cho các cá nhân,
tổ chức xây dựng và kiểm tra ứng dụng
Workgroup: Ấn bản SQL Server Workgroup bao gồm chức năng lõi cơ sở
dữ liệu nhưng không có các dịch vụ đi kèm. Chú ý phiên bản này không còn tồn tại ở
SQL Server 2012.
Express: SQL Server Express dễ sử dụng và quản trị cơ sở dữ liệu đơn
giản. Được tích hợp với Microsoft Visual Studio, nên dễ dàng để phát triển các ứng dụng
dữ liệu, an toàn trong lưu trữ, và nhanh chóng triển khai. SQL Server Express là phiên
bản miễn phí, không giới hạn về số cơ ở dữ liệu hoặc người sử dụng, nhưng nó chỉ dùng
cho 1 bộ vi xử lý với 1 GB bộ nhớ và 10 GB file cơ sở dữ liệu. SQL Server Express là lựa
chọn tốt cho những người dùng chỉ cần một phiên bản SQL Server 2005 nhỏ gọn, dùng
trên máy chủ có cấu hình thấp, những nhà phát triển ứng dụng không chuyên hay những
người yêu thích xây dựng các ứng dụng nhỏ.
b.
Lịch sử ra đời SQL Server và các phiên bản:
Phiên bản đầu tiên của Microsoft SQL Server ra đời đầu tiên vào năm 1989 cho các
hệ điều hành chạy 16 bít với SQL Server phiên bản 1.0 và tiếp tục phát triển cho tới ngày
nay.
SQL Server của Microsoft được thị trường chấp nhận rộng rãi kể từ version 6.5. Sau
đó Microsoft đã cải tiến và hầu như viết lại một engine mới cho SQL Server 7.0. Cho nên
có thể nói từ version 6.5 lên version 7.0 là một bước nhảy vọt. Có một số đặc tính của
SQL Server 7.0 không tương thích với version 6.5. Trong khi đó từ Version 7.0 lên
version 8.0 (SQL Server 2000) thì những cải tiến chủ yếu là mở rộng các tính năng về
web và làm cho SQL Server 2000 đáng tin cậy hơn.
Một điểm đặc biệt đáng lưu ý ở phiên bản 2000 là Multiple-Instance. Tức là bạn có
thể cài dặt phiên bản 2000 chung với các phiên bản trước mà không cần phải gỡ chúng.
Nghĩa là bạn có thể chạy song song version 6.5 hoặc 7.0 với phiên bản 2000 trên cùng
một máy (điều này không thể xảy ra với các phiên bản trước đây). Khi đó phiên bản cũ
trên máy bạn là Default Instance còn phiên bản 2000 mới vừa cài sẽ là Named Instance.
Từ tháng 10 năm 2018, các phiên bản sau được Microsoft hỗ trợ:
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016
SQL Server 2017
Phiên bản hiện tại là Microsoft SQL Server 2017, xuất bản vào ngày 20/10/2017.
SQL Server 2017 chỉ hỗ trợ cho các bộ vi xử lý 64 bit.
a.
Các thành phần cơ bản của SQL Server:
SQL Server được cấu tạo bởi nhiều thành phần như Database Engine, Reporting
Services, Notification Services, Integration Services, Full Text Search Service…. Các
thành phần này khi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc
lưu trữ và phân tích dữ liệu một cách dễ dàng.
Database Engine - Cái lõi của SQL Server:
Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dưới dạng
table và support tất cả các kiểu kết nối (data connection) thông dụng của Microsoft
như
ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC).
Ngoài ra nó còn có khả năng tự điều chỉnh (tune up) ví dụ như sử dụng thêm các tài
nguyên (resource) của máy khi cần và trả lại tài nguyên cho hệ điều hành khi một user
log off.
Replication: Cơ chế tạo bản sao (Replica) giả sử bạn có một database dùng
để chứa dữ liệu được các ứng dụng thường xuyên cập nhật. Một ngày đẹp trời bạn muốn
có một cái database giống y hệt như thế trên một server khác để chạy báo cáo (report
database) (cách làm này thường dùng để tránh ảnh hưởng đến performance của server
chính). Vấn đề là report server của bạn cũng cần phải được cập nhật thường xuyên để
đảm bảo tính chính xác của các báo cáo. Bạn không thể dùng cơ chế back up and restore
trong trường hợp này. Thế thì bạn phải làm sao? Lúc đó cơ chế replication của SQL
Server sẽ được sử dụng để bảo đảm cho dữ liệu ở 2 database được đồng bộ
(synchronized).
Integration Services (DTS) - Integration Services là một tập hợp các công
cụ đồ họa và các đối tượng lập trình cho việc di chuyển, sao chép và chuyển đổi dữ liệu.
Nếu bạn làm việc trong một công ty lớn trong đó data được chứa trong nhiều nơi
khác nhau và ở các dạng khác nhau cụ thể như chứa trong Oracle, DB2 (của IBM), SQL
Server, Microsoft Access, ... Bạn chắc chắn sẽ có nhu cầu di chuyển data giữa các server
này (migrate hay transfer) và không chỉ di chuyển bạn còn muốn định dạng (format) nó
trước khi lưu vào database khác, khi đó bạn sẽ thấy DTS giúp bạn giải quyết công việc
trên dễ dàng.
Analysis Services : Một dịch vụ phân tích dữ liệu rất hay của Microsoft, dữ
liệu (Data) chứa trong database sẽ chẳng có ý nghĩa gì nhiều nếu như bạn không thể lấy
được những thông tin (Information) bổ ích từ đó. Do đó Microsoft cung cấp cho bạn một
công cụ rất mạnh giúp cho việc phân tích dữ liệu trở nên dễ dàng và hiệu quả bằng cách
dùng khái niệm hình khối nhiều chiều (multi-dimension cubes) và kỹ thuật “khai phá dữ
liệu” (data mining).
Notification Services: Dịch vụ thông báo Notification Services là nền tảng
cho sự phát triển và triển khai các ứng dụng tạo và gửi thông báo. Notification Services có
thể gửi thông báo theo địch thời đến hàng ngàn người đăng ký sử dụng nhiều loại thiết bị
khác nhau.
Reporting Services: Reporting Services bao gồm các thành phần server và
client cho việc tạo, quản lý và triển khai các báo cáo. Reporting Services cũng là nền tảng
cho việc phát triển và xây dựng các ứng dụng báo cáo.
Full Text Search Service: Dịch vụ SQL Server Full Text Search là một
dịch vụ đặc biệt cho đánh chỉ mục và truy vấn cho dữ liệu văn bản không cấu trúc được
lưu trữ trong các CSDL SQL Server. Đánh chỉ mục với Full Text Search có thể dduwowcj
tạo trên bất kỳ cột dựa trên dữ liệu văn bản. Nó sẽ rất hiệu quả cho việc tìm các sử dụng
toán tử LIKE trong SQL với trường hợp tìm văn bản.
Service Broker: Được sử dụng bên trong mỗi Instance, là môi trường lập
trình cho việc các ứng dụng nhảy qua các Instance. Service Broker giao tiếp qua giao thức
TCP/IP và cho phép các component khác nhau có thể được đồng bộ cùng nhau theo
hướng trao đổi các message. Service Broker chạy như một phần của bộ máy cơ sở dữ liệu,
cung cấp một nền tảng truyền message tin cậy và theo hàng đợi cho các ứng dụng SQL
Server.
2. Ngôn ngữ lập trình
a.
ASP.NET core
ASP.NET Core là gì?
ASP.NET Core là một open-source mới và framework đa nền tảng (cross-platform)
cho việc xây dựng những ứng dụng hiện tại dựa trên kết nối đám mây, giống như web
apps, IoT và backend cho mobile. Ứng dụng ASP.NET Core có thể chạy trên .NET Core
hoặc trên phiên bản đầy đủ của .NET Framework. Nó được thiết kế để cung cấp và tối ưu
development framework cho những dụng cái mà được triển khai trên đám mây (clound)
hoặc chạy on-promise. Nó bao gồm các thành phần theo hướng module nhằm tối thiểu tài
nguyên và chi phí phát triển, như vậy bạn giữ lại được sự mềm giẻo trong việc xây dựng
giải pháp của bạn. Bạn có thể phát triển và chạy những ứng dụng ASP.NET Core đa nền
tảng trên Windows, Mac và Linux. Đồng thời nó đã trở thành một mã nguồn mở. Đây là
một thay đổi quan trọng nhất của ASP.NET Core.
Những nền tảng cải tiến của ASP.NET Core: ASP.NET Core có một số
thay đổi kiến trúc lớn, đó là kết quả của việc học hỏi rất nhiều từ các framework module
hóa khác. ASP.NET Core không còn dựa trên System.Web.dll nữa. Nó được dựa trên một
tập hợp các gói, các module hay cũng được gọi là các Nuget packages. Điều này cho phép
bạn tối ưu ứng dụng của bạn để chỉ bao gồm những packages nào cần thiết. Lợi ích của nó
là giúp cho ứng dụng nhỏ hơn, bảo mật chặt chẽ hơn, giảm sự phức tạp, tối ưu hiệu suất
hoạt động và giảm chi phí, thời gian cho việc phát triển. ASP.NET Core có được những
nền tảng cải tiến dưới đây:
Hợp nhất việc xây dựng web UI và web APIs
Tích hợp những client-side frameworks hiện đại và những luồng phát triển
Hệ thống cấu hình dựa trên môi trường đám mây thật sự
Dependency injection được xây dựng sẵn
HTTP request được tối ưu nhẹ hơn
Có thể host trên IIS hoặc self-host trong process của riêng bạn
Được xây dựng trên .NET Core, hỗ trợ thực sự app versioning
Chuyển các thực thể, thành phần, module như những NuGet packages
Những công cụ mới để đơn giản hóa quá trình phát triển web hiện đại
Xây dựng và chạy đa nền tảng (Windows, Mac và Linux)
Mã nguồn mở và tập trung vào cộng đồng
Xây dựng web UI và web API sửng dụng ASP.NET Core MVC
Bạn có thể tạo ra các ứng dụng web có thể testing theo mô hình MVC(ModelView-Controller)
Bạn có thể xây dựng HTTP services cái mà hỗ trợ nhiều định dạng và có đầy đủ hỗ
trợ cho nội dung của dữ liệu trả về
Razor cung cấp một ngôn ngữ hiệu quả để tạo Views
Tag Helper cho phép code server side tham gia vào việc tạo và render phần tử
HTML
Model Binding tự động ánh xạ dữ liệu từ HTTP request tới tham số của method
action
Model Validation tự động thực hiện validate client và server
Phát triển client-side
ASP.NET Core được thiết kế để tích hợp một cách liên tục với nhiều client-side
frameworks, bao gồm AngularJS, KnockoutJS và Bootstrap.
ASP.NET Core nhắm đến .NET Framework
ASP.NET Core có thể nhắm đến .NET Core hoặc .NET Framework. Các ứng dụng
ASP.NET Core nhắm đến .NET Framework không phải là ứng dụng đa nền tảng khi chỉ
chạy trên Windows. Hiện chưa có kế hoạch loại bỏ sự hỗ trợ .NET Framework ở
ASP.NET Core. Nhìn chung, ASP.NET Core được tạo thành các thư viện .NET Standard
(bản .NET chuẩn). Các ứng dụng viết bằng .NET Standard 2.0 cho thế chạy bất kỳ đâu
nếu .NET Standard 2.0 được hỗ trợ.
Kết luận
ASP.NET Core là một mô hình lập trình mới sử dụng cho các ứng dụng chạy đa nền
tảng (macOs, Linux và Windows) và có khả năng triển khai trên đám mây. ASP.NET
Core cũng hỗ trợ ASP.NET MVC, ASP.NET Web API, backend mobile và cũng là mã
nguồn mở. Bạn cần phân tích kỹ yêu cầu của ứng dụng để quyết định xem có nên dùng
ASP.NET Core hay không
b.
Mô hình MVC trong ASP.NET Core
Mô hình MVC trong ASP.NET Core là một mã nguồn mở nhẹ, được kiểm
chứng và trình bày cách tối ưu để sử dụng với ASP.NET Core
– Mô hình MVC trong ASP.NET Core cung cấp một mô hình để xây dựng
các trang web động hiệu quả. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ
phát triển TDD thân thiện và sử dụng các tiêu chuẩn web mới nhất
ASP.NET Core trong Mô hình MVC bao gồm các thành phần:
Routing
Model binding
Model validation
Dependency injection
Filters
Areas
Web APIs
Testability
Razor view engine
Strongly typed views
Tag Helpers
View Components
Routing: Routing bạn có thể hiểu đơn giản nó là một thành phần URL cho
phép bạn xây dựng các URL một cách dễ hiểu, dễ tìm kiếm và tối ưu hóa công cụ tìm
kiếm (SEO) mà không cần quan tâm các tập tin trên máy chủ được tổ chức thế nào. Bạn
chỉ cần định nghĩa routes của bạn bằng cách sử dụng các routes được hỗ trợ và được mặc
định với các giá trị tùy chọn.
Model binding: ASP.NET Core với Mô hình MVC model binding giúp
chuyển đổi dữ liệu theo yêu cầu từ client (giá trị, dữ liệu route, các thông số chuổi truy
vấn, tiêu đề HTTP) vào các đối tượng mà Controller có thể xử lý. Kết quả là logic
Controller của bạn không phải làm công việc tìm ra các dữ liệu yêu cầu gửi đến; nó chỉ
đơn giản có các dữ liệu như tham số cho các hành động của nó.
Model validation: Mô hình MVC trong ASP.NET Core hỗ trợ validation
bằng cách giúp xác thực dữ liệu trong Model của bạn. Thuộc tính này sẽ kiểm tra trên các
client trước khi gửi đến máy chủ, cũng như trên máy chủ trước khi các hành động được
gọi. Hãy xem thử ví dụ bên dưới
Framework sẽ xử lý yêu cầu xác thực dữ liệu trên cả client và trên server.
Dependency injection: ASP.NET Core hỗ trợ xây dựng dependency
injection (DI). Trong mô hình MVC ASP.NET Core, các Controller có thể yêu cầu các
dịch dụ cần thiết thông qua các constructors của ASP.NET Core, cho phép họ thực hiện
theo Explicit Dependencies Principle
Filters: Filters giúp các nhà phát triển gói gọn các yêu cầu của họ, như xử
lý ngoại lệ hoặc xác thực. Bộ lọc có thể được sử dụng để điều khiển hoặc thực hiện các
hành động dưới dạng thuộc tính. Một số sộ lọc bạn có thể thấy như là Authorize
Areas: Areas là một cách để phân chia các ASP.NET Core với Mô hình
MVC web thành các nhóm chức năng nhỏ hơn. Với mỗi Area chính là một cấu trúc MVC.
Trong một project MVC, các thành phần như Model, Controller và View được lưu giữ
trong các thư mục khác nhau, và MVC sử dụng quy ước đặt tên để tạo ra các mối quan hệ
giữa các thành phần. Đối với dự án lớn, việc phân chia các Area sẽ giúp tạo ra những
phân vùng với những chức năng riêng biệt. Ví dụ, đối với một project thương mại điện tử
bạn sẽ cần các chức năng như là thanh toán, tìm kiếm, checkout… và lúc này bạn sẽ chia
thành các Area nhỏ hơn như là checkout, billing, và Seach, tương ứng với mỗi area lúc
này đều sẽ có các thành phần Model, Controller, View.
WebAPIs: Ngoài việc là một nền tảng tuyệt vời để xây dựng các trang web.
Mô hình MVC trong ASP.NET Core còn hỗ trợ rất tốt cho việc xây dựng các Web API.
Bạn có thể xây dựng các services mà tại đó có thể tiếp cận tới các client bao gồm trình
duyệt và các thiết bị di động.
Framework hỗ trợ HTTP với việc xây dựng các định dạng dữ liệu như là JSON và
XML.
Sử dụng các link cho phép hỗ trợ hypermedia. Cho phép chia sẻ tài nguyên gốc
(CORS) để API Web của bạn có thể chia sẻ trên nhiều ứng dụng Web
Testability: Framework sử dụng các interfaces và dependency injection nên
rất phù hợp để kiểm thử đơn vị, và framework bao gồm các tính năng (như một TestHost
và cung cấp bộ nhớ cho Entity Framework)
Razor view engine: Hồi trước thì Microsoft còn sử dụng Web form, nhưng đến
ASP.NET Core thì Web form đã không còn được sử dụng nữa, Microsoft chỉ còn sử dụng
Razor view engine để hiển thị nội dung. Razor gọn nhẹ, ý nghĩa và là một ngôn ngữ đánh
dấu giúp định nghĩa các view được nhúng code C#. Razor được sử dụng để tự động tạo ra
nội dụng web trên máy chủ. Bạn có thể kết hợp giữa code server với code và nội dung từ
client.
Sử dụng Razor bạn có thể định nghĩa các layouts, partial views và thay thế các
sections.
Strongly typed views:
Tag Helpers: Tag Helpers giúp bạn tạo ra và dựng các phần tử HTML
trong Razor. Bạn có thể sử dụng Tag Helpers để định nghĩa các tags (ví dụ,
) hoặc chỉnh sửa các hành vi của các thẻ hiện tại (ví dụ,