1
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
BÁO CÁO THỰC TẬP
TÌM HIỂU FRAMEWORK ASP.NET CORE
VÀ XÂY DỰNG ỨNG DỤNG
Công ty thực tập
: Công ty cổ phần Công nghệ Saha
Người phụ trách
: Nguyễn Phúc Đạt
Thực tập sinh
: Nguyễn Mạnh Hiếu - 17520479
TP. Hồ Chí Minh, tháng 6 năm 2022
Nguyễn Mạnh Hiếu
2
LỜI MỞ ĐẦU
Trong cuộc cách mạng công nghiệp 4.0, công nghệ thông tin nói chung và ngành Công
nghệ phần mềm nói riêng luôn là nhân tố đóng vai trò quan trọng trong quá trình phát triển của
xã hội.
Công nghệ Web, hay công nghệ sản xuất các trang web đã phục vụ hầu hết các nhu cầu
của con người từ bán hàng, cung cấp kiến thức đến thông tin liên lạc, ... Hiện nay đã có đến hơn
1.5 tỷ trang web, nhưng nhu cầu tạo ra những trang web mới vẫn chưa có dấu hiệu giảm.
Do đó, một trang web muốn được nhiều người sử dụng phải đáp ứng được yếu tố hình
thức và nội dung. Làm thế nào để sản phẩm tạo ra đạt chất lượng cao ở hai yếu tố trên luôn làm
bất kì một đội ngũ phát triển website nào cũng cần phải suy nghĩ đau đầu. Để thử thách bản thân
trong ngành công nghiệp web, em đã lựa chọn Asp.net core là định hướng cho việc học cũng
như nghề nghiệp trong tương lai của mình.
ASP.NET Core là một phiên bản mới của ASP.NET, được phát hành bởi Microsoft và là
một mã nguồn mở trên GitHub. ASP.NET Core được sử dụng để phát triển khuôn khổ website
và có thể thích ứng với nhiều trình duyệt khác nhau như Windows, Mac hoặc Linux kể cả trên
nền tảng MVC. Ban đầu, phiên bản này có tên là ASP.NET 5 nhưng sau đó được đổi tên thành
ASP.NET Core.
ASP.NET Core được thiết kế để tối ưu development framework cho những ứng dụng cái
mà được chạy on-promise hay được triển khai trên đám mây. ASP.NET Core bao gồm các
thành phần theo hướng module với mục đích tới thiểu tài nguyên và tiết kiệm chi phí khi phát
triển. Đồng thời, ASP.NET Core cũng là một mã nguồn mở, một xu thế mà các ngôn ngữ lập
trình hiện nay hướng đến.
Những lợi ích khi sử dụng ASP.NET Core:
• Xây dựng web UI và web API với ASP.NET Core MVC
• Người dùng có thể tạo ra những ứng dụng web có thể thực hiện testing theo mô
hình MVC.
Nguyễn Mạnh Hiếu
3
• Xây dựng HTTP services hỗ trợ nhiều định dạng và đầy đủ những hỗ trợ cho nội
dung của dữ liệu trả về.
• Razor cung cấp ngôn ngữ tạo Views hiệu quả.
• Tag Helper cho phép code server side tham gia vào quá trình tạo và render phần
tử HTML.
• Model Binding có thể tự động ánh xạ dữ liệu từ HTTP request tới những tham sớ
của method action.
• Model validation thực hiện validate client và server một cách tự động.
Phát triển client-side:
ASP.NET Core được thiết kế tích hợp với nhiều client side frameworks một cách liên tục
bao gồm AngularJS, Bootstrap và KnockoutJS.
Những lợi ích khác:
• Ngoài ra, ASP.NET Core còn được đánh giá cao khi mang trong mình nhiều lợi
ích khác như:
• Là khung mẫu và gọn gàng hơn kiến trúc nhiều tầng.
• Là một khung công tác với mã nguồn mở.
• Dễ dàng tạo ứng dụng ASP.NET đa nền tảng trên Windows, Mac và Linux.
• Cấu hình là môi trường sẵn sàng cho đám mây.
• Khả năng lưu trữ trên: IIS, HTTP.sys, Kestrel, Nginx, Apache và Docker.
Nguyễn Mạnh Hiếu
4
LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công ty cổ phần Công nghệ Saha đã tạo điều kiện cho em có
cơ hội được thực tập tại công ty.
Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của nhóm trainer,em đã có
thêm nhiều kiến thức, kinh nghiệm bổ ích mà tụi em chưa có được trước khi tới công ty. Chân
thành cảm ơn các anh chị trong nhóm trainer đã bỏ ra nhiều thời gian,công sức để hướng dẫn
chúng em hoàn thành đợt thực tập này.
Đặc biệt cảm ơn anh Nguyễn Phúc Đạt, đã training cho chúng em những kiến thức quan
trọng và giúp đỡ cho em tận tình từ những khó khăn trong công việc, đến những khó khăn việc
làm quen với môi trường mới và đã chỉ dẫn chúng em về cách làm báo cáo, lên kế hoạch, những
kỹ năng không thể thiếu để có thể làm ra một sản phẩm trong thời gian qua.
Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều
kiện em làm bài báo cáo này.
Nguyễn Mạnh Hiếu
TP. Hồ Chí Minh, tháng 06 năm 2022
Nguyễn Mạnh Hiếu
5
NHẬN XÉT CỦA KHOA
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
..........................................................................................................................................................
Nguyễn Mạnh Hiếu
6
MỤC LỤC
Chương 1: Giới thiêu công ty thực tập ................................................................................................... 7
Giới thiệu Công ty cổ phần Công nghệ Saha ..................................................................................... 7
Chương 2: Nội dung thực tập ................................................................................................................ 11
1. Tìm hiểu công ty và các kỹ năng cơ bản trong công ty ............................................................ 11
2. Nghiên cứu kỹ thuật .................................................................................................................... 11
2.1.
Tìm hiểu về ASP.NET Core và các công cụ làm việc .......................................................... 11
2.2.
Tìm hiểu về Microsoft SQL Server ....................................................................................... 12
2.3.
Tìm hiểu về Angular framework .......................................................................................... 12
3. Thực hiện project ........................................................................................................................ 13
4. Lịch làm việc ................................................................................................................................ 13
Chương 3: Chi tiết về project ................................................................................................................ 15
1. Giới thiệu về website : ................................................................................................................. 15
2. Cơ sở dữ liệu: ............................................................................................................................... 15
3. Giao diện trang web: ................................................................................................................... 16
TÀI LIỆU THAM KHẢO ................................................................................................................. 23
Chương 4: TỔNG KẾT ......................................................................................................................... 24
Nguyễn Mạnh Hiếu
7
Chương 1: Giới thiêu công ty thực tập
Giới thiệu Công ty cổ phần Công nghệ Saha
Công ty cổ phần Công nghệ Saha ( SAHA TECHNOLOGY JSC ) thuộc hệ sinh
thái của SAHA là Công ty phần mền chuyển thiết kế , cung cấp các dịch vụ về
WEBSITE - APP – POS quản lí và bán hàng đa kênh cho các doanh nghiệp luôn
hướng đến giải pháp kinh doanh O2O ( Online to Ofline ) cho các chủ doanh nghiệp .
Đây đợc xem là mô hình của tương lai mang đến mục tiêu tận dụng các ưu điểm của cả
2 kênh bán hàng truyền thống và trực tuyến .
Lịch sử doanh nghiệp
- Từ đầu 2020 khi đại dịch Covid 19 xảy ra và nhận thấy thời cơ của chuyển đổi số tại Việt
Nam, Saha với đội ngũ cựu du học sinh và kỹ sư phần mềm tại Nhật Bản đã bắt đầu
xây dựng và cho ra mắt nền tảng quản lý và bán hàng đa kênh phù hợp với tất cả các
nhà bán hàng. Sau một thời gian đưa nền tảng đồng bộ giữa App – Web – Pos với 3
tiêu chí cụ thể DỄ DÀNG – NHANH CHĨNG - TIẾT KIỆM đến tay người bán hàng
.Với bộ giải pháp bán hàng này giúp đối tác của SAHA dễ dàng tiếp cận tới khách
hàng của họ và tăng doanh thu nâng tầm doanh nghiệp
- Hiện đã có hơn 500 doanh nghiệp đã và đang sử dụng các giải pháp của Saha
Nguyễn Mạnh Hiếu
8
- Quy mô hoạt động: Với tiêu chí đưa doanh nghiệp tới gần hơn với người khách hàng
SAHA đã đưa ra thị trường công nghệ các sản phẩm thương mại điện tử theo các lĩnh
vực sau :
- IKI POS: Phần mền quản lí và bán hàng offline dễ dàng sử dụng nhất giúp quản lí bán
hàng, doanh thu , lãi lỗ ,tính tiền , in hóa đơn , chấm công và quản lí nhân viên cho
khách hàng nhanh chóng .
- IKI WEB: Thiết kế Website quản lí và bán hàng offline chuẩn SEO, chuyên nghiệp.
- IKI TECH: Phần mềm quản lí bán hàng tích hợp Online và Offline, giúp người bán
hàng trên các nề tảng đa kênh : Lazada , Shopee,...quản lí được nhiều kênh và bán hàng
, nhưng những vậy Saha còn có chương trình Affiliate giúp cho doanh nghiệp tiếp cận
tới nhiều đối tượng kinh doanh hơn . Đặc biệt đối tác của SAHAcó thể được mở thêm
APP bán hàng riêng cho khách hàng của họ.
Nguyễn Mạnh Hiếu
9
- WEBSITE IKI TECH: đây là website bán hàng Online và Offline, giúp người bán hàng
trên các nề tảng đa kênh : Lazada , Shopee,...quản lí được nhiều kênh và bán hàng ,
nhưng những vậy Saha còn có chương trình Affiliate giúp cho doanh nghiệp tiếp cận
tới nhiều đối tượng kinh doanh hơn
- IKI STORE: Ngoài ra, SAHA còn mở rộng thiết kế app bán hàng dành riêng cho khách
hàng của doanh nghiệp. Giúp cho doanh nghiệp tăng mức độ nhận diện thương hiệu
với khách hàng của họ.
Nguyễn Mạnh Hiếu
10
Ngoài các sản phẩm về công nghệ cho các doanh nghiệp bán hàng, Saha – IKI Tech
còn cung cấp cho doanh nghiệp các dịch vụ Digital Marketing chuyên nghiệp, hướng
đến giải pháp chuyển đổi số hoàn thiện
Nguyễn Mạnh Hiếu
11
Chương 2: Nội dung thực tập
Đợt thực tập với chủ đề “TÌM HIỂU FRAMEWORK ASP.NET CORE VÀ XÂY
DỰNG ỨNG DỤNG” nhằm mục đích giúp sinh viên thực tập được đào tạo toàn diện về lập
trình webiste, đồng thời rèn luyện những kỹ năng mềm như làm việc nhóm, thuyết trình, giao
tiếp. Tại công ty, sinh viên có cơ hội được học tập, khám phá và làm việc trong một môi trường
phát triển chuyên nghiệp.
1. Tìm hiểu cơng ty và các kỹ năng cơ bản trong công ty
Thời gian : 1 ngày
Nội dung : Giới thiệu về công ty, cách tổ chức của công ty
Được nghe người phụ trách giới thiệu về công ty, khới phát triển phần mềm, team,
quy trình làm việc từ cao xuống thấp, cách thức tổ chức của công ty.
- Được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy
định cần phải tuân thủ, cách sử dụng email trong công việc, điểm danh, check
in/checkout…
Kết quả: Hiểu thêm về cách tổ chức của một công ty là như thế nào. Có thêm các kĩ
năng làm việc như gửi mail, cách hỏi và đặt vấn đề, giúp cho em tự tin hơn trong
những thời gian làm viêc sau này.
-
2. Nghiên cứu kỹ thuật
2.1.
Tìm hiểu về ASP.NET Core và các cơng cụ làm việc
Nội dung :
o ASP.NET Core: Tìm hiểu các thành phần cơ bản, Dotnet CLI, cấu trúc
một dự án ASP.NET Core, cách config, …
o Entity framework: Tìm hiểu các thành phần cơ bản, dbcontext, entity,
migration, code-first, db-first,…
o Tìm hiểu các công cụ trên Visual Studio.
o Nghiên cứu cách sử dụng git.
o Tìm hiểu cách viết một REST với ASP.NET Core và Entity framework,
tạo một git repository.
Thực hiện :
o Đọc nội dụng hướng đẫn của mentor.
o Tự tìm hiểu các tài liệu liên quan.
o Thực hành sử dụng các phần mềm đã nêu trên.
Kết quả :
Nguyễn Mạnh Hiếu
12
2.2.
- Hiểu được kiến thức cơ bản về ASP.NET Core và Entity framework.
- Nắm được cách sử dụng Visual Studio, Git, NuGet ackage manager.
Tìm hiểu về Microsoft SQL Server
Nội dung :
- Nghiên cứu cái tài liệu về SQL, các cú pháp SQL, …
- Tìm hiểu và cài đặt Microsoft SQL server.
- Kết nối với dự án với database.
Thực hiện :
o Đọc nội dung hướng dẫn của mentor.
o Tự tìm hiểu các tài liệu liên quan.
o Thực hành áp dụng vào project.
Kết quả :
2.3.
o Hiểu được kiến thức cơ bản về Microsoft SQL Server.
o Nắm được cách cài đặt và sử dụng Microsoft SQL Server, Microsoft SQL
Server Management Studio
Tìm hiểu về Angular framework
Nội dung:
o Tìm hiểu khái niệm single-page application
o Tìm hiểu về các kiến thức cơ bản của Angular, Angular component
o Tìm hiểu về Directives, làm việc với các Directives cơ bản như ngFor,
ngIf.
o Tìm hiểu kiến thức về Service trong Angular( Angular HTTP Client, Observable, ..).
o Tìm hiểu về Reactive Form(FormsModule,ngForm, ngModel,ngSubmit).
o Nắm rõ kiến thức về Router và Router Guard
Thực hiện :
o Đọc nội dung hướng dẫn của mentor.
o Tự tìm hiểu các tài liệu liên quan.
Nguyễn Mạnh Hiếu
13
o Thực hành áp dụng vào project.
Kết quả :
o Tự tìm hiểu các tài liệu liên quan.
o Thực hành áp dụng vào project.
3. Thực hiện project
Sau một tháng được training và thực hành, thực tập sinh đã nắm được những kiến thực cơ
bản về ASP.NET Core, Entity Framework, SQL Server, AngularJS. Trong tháng thứ hai,
thực tập sinh cần áp dụng những kiến thức đã học để tham gia vào project .
4. Lịch làm việc
Tuần
Công việc
Tìm hiểu về công ty, cách tổ chức
của công ty.
- Làm quen với các công cụ làm việc
trong công ty.
- Học cách trao đổi, làm việc qua
email.
- Tìm hiểu về ASP.NET Core và các
công cụ làm việc
-
1
2
-
Tìm hiểu về ASP.NET Core
-
Tìm hiểu Entityframework
-
Làm quen với các cơng cụ làm việc
Người
hướng dẫn
Mức độ
hồn
thành
Nhận xét
của người
hướng
dẫn
Chị Hiên
Anh Đạt
……..
Tìm hiểu cấu trúc project ASP.NET
CORE 5.0 MVC
- Làm việc với Static Files trong
ASP.NET CORE 5.0 MVC
- Làm việc với Controller,View,Custom
-
3
4
Anh Đạt
Anh Đạt
Nguyễn Mạnh Hiếu
14
Layout,Default Layout.cshtml …
- Làm việc với Routing/EndPoints
5
- Truyền dữ liệu từ Controller sang View
Làm việc với SQL để tạo bảng biểu
6
(table) cho dự án
- Tạo Models trong Asp.Net Core
CRUD với Entity Framework
7
- Cập nhật DbContext thêm mới
Models với Entity Framework
8
- Kiểm tra lại kiến thứ
9-12
Xử lý những task được giao
Anh Đạt
Anh Đạt
Anh Đạt
Anh Đạt
Anh Đạt
Nguyễn Mạnh Hiếu
15
Chương 3: Chi tiết về project
1. Giới thiệu về website :
Đây là webiste Cổng thông tin đào tạo của Trường Đại học Công nghệ Thông tin là trang
thông tin và tiện ích dành cho sinh viên, giảng viên và cán bộ của Trường.
Ý tưởng được dựa trên webiste: />
2. Cơ sở dữ liệu:
- Gồm 10 bảng: giangvien, khoa, lop, dangkyhocphan, lopcn, taikhoan,
thongbao, sinhvien,hoc,mon.
- Xây dựng cái ràng buộc toàn vẹn trigger, function, procedure.
Nguyễn Mạnh Hiếu
16
3. Giao diện trang web:
3.1 Trang thông báo:
3.2Trang đăng nhập:
3.3 Trang chủ:
Nguyễn Mạnh Hiếu
17
Nguyễn Mạnh Hiếu
18
3.4 Quản lý đăng ký học phần:
3.5 Quản lý sinh viên:
Nguyễn Mạnh Hiếu
19
3.6 Quản lý giáo viên:
3.7 Quản lý học vụ:
Nguyễn Mạnh Hiếu
20
3.8 Quản lý môn học:
3.9 Quản lý khoa:
Nguyễn Mạnh Hiếu
21
3.10 Quản lý lớp học:
3.11 Quản lý lớp chủ nhiệm:
Nguyễn Mạnh Hiếu
22
3.12 Quản lý tài khoản :
3.13 : Quản lý thông báo:
Nguyễn Mạnh Hiếu
23
TÀI LIỆU THAM KHẢO
- HTML CSS
/>- Get started with ASP.NET Core MVC
/> />
Nguyễn Mạnh Hiếu
24
Chương 4: TỔNG KẾT
Sau gần 3 tháng thực tập tại SAHA, em đã học được nhiều kinh nghiệm bổ ích về lập
trình web với asp.net core, về thiết kế UI/UX hoàn thành các nhiệm vụ được giao. Nhờ đó, em
đã hiểu được quy trình phát triển của một dự án, đồng thời hiểu được trải nghiệm làm dự án
thực tế, tăng kĩ năng giao tiếp, xử lí tình h́ng.
Chân thành cám ơn quý Công ty cổ phần Công nghệ SAHA đã giúp đỡ tận tình cho em
trong thời gian thực tập tại công ty. Đặc biệt là anh Nguyễn Phúc Đạt cùng các anh chị trong
công ty đã giúp đỡ và hướng dẫn trong quá trình làm việc để em có thể hoàn thành nhiệm vụ
được giao.
Nguyễn Mạnh Hiếu