Lab01: M V C Lưu ý: Để thực hành, các bạn phải cài Visual Studio 2013 trở lên mới hỗ trợ MVC5.

Similar documents
Entity Framework (EF)

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

HƯỚNG DẪN CÁCH SỬ DỤNG WINDOWS MOVIE MAKER

BÀI TẬP THỰC HÀNH LẬP TRÌNH WINDOWS C#

Tài liệu hướng dẫn: Stored Procedure

HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM DIỆT VIRUS AVIRA

Cài đặt và cấu hình StarWind iscsi trên Windows. iscsi SAN là gì?

Hướng dẫn cài đặt FPT

HƯỚNG DẪN SỬ DỤNG HỆ THỐNG CẬP NHẬT CHỨNG THƯ SỐ HOTLINE:

I. Hướng Dẫn Đăng Nhập:

Tình huống 1: PPPoE với Username và Password

HƯỚNG DẪN SỬ DỤNG ĐẦU GHI H.264 DVR VISION VS (4CH - 8CH - 16CH)

HƯỚNG DẪN SỬ DỤNG PLESK PANEL

BELGIUM ONLINE APPOINTMENT

Online Appointment System will work better with below conditions/ Hệ thống đặt hẹn online sẽ hoạt động tốt hơn với điều kiện sau đây:

GV: Phạm Đình Sắc or

Bài Thực hành Asp.Net - Buổi 1 - Trang: 1

Bộ môn MMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

Cụ thể những công việc mà AndroidManifest.xml thực hiện: - Đặt tên cho Java package của ứng dụng.

Mô hình dữ liệu quan hệ (Relational data model)

Internet Protocol. Bởi: Phạm Nguyễn Bảo Nguyên

ĐỌC, GHI XML VỚI C# TRONG ADO.NET --- SỬ DỤNG VISUAL STUDIO

BÀI 1: VBA LÀ GÌ? TẠO MACRO, ỨNG DỤNG CÁC HÀM TỰ TẠO (UDF), CÀI ĐẶT ADD-INS VBA là gì?

CẤU TRÚC DỮ LIỆU NÂNG CAO

Khoa KH & KTMT Bộ môn Kỹ Thuật Máy Tính

MỤC LỤC. Giáo trình Thiết kế web Trang 1

Chương 7. Application Layer. Tài liệu : Forouzan, Data Communication and Networking

B5: Time to coding. Tới thư mục src/example.java và thay đổi nội dung file như sau: Mã: package at.exam;

PHÁT TRIỂN ỨNG DỤNG WEB

Chương 5. Network Layer 19/09/2016 1

Tạo Project với MPLAB

SIEMENS INDUSTRIAL NETWORKS

BÀI 6 LÀM VIỆC VỚI THÀNH PHẦN MỞ RỘNG CỦA CSS3

LẬP TRÌNH WINDOWS FORM VỚI CÁC CONTROL NÂNG CAO (Các control trình bày dữ liệu dưới dạng danh sách)

TÀI LIỆU THỰC HÀNH MÔN CƠ SỞ DỮ LIỆU NÂNG CAO

SIMULATE AND CONTROL ROBOT

HƢỚNG DẪN TRIỂN KHAI KASPERSKY - MOBILE DEVICE MANAGEMENT

STACK và QUEUE. Lấy STACK

CHƯƠNG 2: CÁC ĐẶC ĐIỂM VỀ MÔI TRƯỜNG PHÁT TRIỂN (IDE)

Chương 5. Network Layer. Phần 1 - Địa chỉ IPv4. Tài liệu : Forouzan, Data Communication and Networking

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

LÂ P TRI NH WEB ASP.NET

Giáo trình này được biên dịch theo sách hướng dẫn của Sun Light. Vì là hướng dẫn kỹ thuật, trong này những thuật ngữ kỹ thuật bằng tiếng Anh tôi chỉ

Kỹ thuật thu nhỏ đối tượng trong Design (Layout)

B3: Bên khung Package Explore bên trái đi tới thư mục res, bạn sẽ thấy có 3 thư mục con:

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

Phần 1: Hướng dẫn sử dụng PictureBox tạo Slide Show

Nội dung chính của chương. Các công nghệ đĩa cứng Cấu tạo vật lý của đĩa cứng Cấu tạo logic của đĩa cứng Cài đặt đĩa cứng như thế nào?

TÀI LIỆU HƯỚNG DẪN SỬ DỤNG HOSTING PLESK PANEL

GIẢI THUẬT ĐỊNH TUYẾN (ROUTING ALGORITHM)

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

HƯỚNG DẪN SỬ DỤNG NHANH MINDJET MIND MANAGER

Bài thực hành số 2 QUYỀN và ROLE

Bài tập lớn số 1. Giả lập bộ định thời

NHẬP MÔN LẬP TRÌNH KHOA HỌC DỮ LIỆU. Bài 10: Thư viện Pandas (2)

LAB IP SLA Bài 1. Bùi Quốc Kỳ ***

Câu 1: (2 điểm) So sách giữa 2 đối tượng Response và Request. Cho ví dụ minh hoạ.

BẢO MẬT TRONG SQL SERVER

1 Bước 1: Test thử kit LaunchPad.

1 Radio Button Radio Group, CheckBox, Spinner

TỔNG QUAN VỀ.NET VÀ C#

Tìm hiểu Group Policy Object và các ví dụ

Nhấn nút New để tạo 1 biến mới Trang 17

Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM LẬP TRÌNH MINICHAT. Bài giảng 3. Trang1. Khoa Khoa Học Và Kỹ Thuật Máy Tính

Hướng Dẫn Thực Hành Tập tin & Thư mục

Mạng máy tính - Computer Network: Hệ. Giao thức - Protocol:

Ôn tập Thiết bị mạng và truyền thông DH07TT - Lưu hành nội bộ (không sao chép dưới mọi hình thức)

Parallels Cloud Server 6.0

Chương 6. Transport Layer. Tài liệu : Forouzan, Data Communication and Networking

Chủ đề 7: Triển khai và Bảo trì. COMP1026 Introduction to Software Engneering CH7-1 HIENLTH

Kích hoạt phương thức xa (RMI- Remote Method Invocation )

Tạo repository mới. The working tree. The staging index. Lệnh git init tạo một repository loại git. tại thư mục hiện tại: $ git init

HƯỚNG DẪN QUẢN TRỊ HỆ THỐNG

Lecture 12. Trees (1/2) Nội dung bài học:

Qu n ả tr h ố g t p ậ tin

ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN

BÀI LAB ĐỔI TÊN DOMAIN

LINQ TO SQL & ASP.NET

Cấu hình Router FTTH ---X---

MA NG MA Y TI NH (Computer Networks)

dụng một chính sách, điều này giúp dễ dàng quản lý và cung cấp tính năng Load Balancing (cân bằng tải) phục vụ tốt hơn các yêu cầu của tổ chức.

ĐỀ CƢƠNG CHI TIẾT HỌC PHẦN CHUYÊN ĐỀ JAVA NÂNG CAO

Phần 2. SỬ DỤNG POWERPOINT ĐỂ CHUẨN BỊ NỘI DUNG TRÌNH BÀY

HỢP ĐỒNG MUA BÁN HÀNG HÓA QUỐC TẾ GV: NGUYỄN THỊ BÍCH PHƯỢNG

Các kiểu định địa chỉ họ MSC-51

Chuyên đề: Phát triển ứng dụng phân bố Java Eclipse J2EE 3.5 IDE, GlassFish Server, MySQL

ỨNG DỤNG AJAX. <input id="xuat" size="" style="width: 184px" type="button" value="xử LÝ" onclick ="Xuly_xuat();" />

NỘI DUNG ÔN TẬP MÔN HỆ CƠ SỞ DỮ LIỆU

Bài 10: Cấu trúc dữ liệu

HTML DOM - Forms. MSc. nguyenhominhduc

BÀI GIẢNG CHƯƠNG 3 GIAO TIẾP KẾT NỐI SỐ LIỆU

KIẾN TRÚC MÁY TÍNH. Giảng viên: ThS. Phan Thanh Toàn. v

Exceptions. Outline 7/31/2012. Exceptions. Exception handling is an important aspect of objectoriented. Chapter 10 focuses on:

Môn Học: Cơ Sở Dữ Liệu 2. Chương 3 LẤY DỮ LIỆU TỪ NHIỀU NGUỒN

Bài 13: C++11. EE3490: Kỹ thuật lập trình HK1 2017/2018 TS. Đào Trung Kiên ĐH Bách khoa Hà Nội

Bài thực hành 1: Chỉ mục trong SQL Server

CHAPTER 6: DANH SÁCH LIÊN KẾT (LINKED LISTS)

Lập trình chuyên nâng cao. Lập trình phân tán (Distributed computing

LẬP TRÌNH TRÊN MÔI TRƯỜNG WINDOWS *** ADO.NET

Transcription:

Lab01: M V C Lưu ý: Để thực hành, các bạn phải cài Visual Studio 2013 trở lên mới hỗ trợ MVC5. 1 Mục đích Giới thiệu mô hình MVC Model, Controller, View Phân biệt ViewData, ViewBag, TempData 2 Khởi động Tạo mới project, chọn Visual C# Web Template. Sau khi tạo mới Web Application MVC5, cửa sổ tiếp theo hiện lên chọn MVC Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 1

Sau khi chọn xong các bước trên, bạn có được ứng dụng mẫu MVC Application với cấu trúc như hình: Cấu trúc của một MVC Web Application Thư mục /Controllers /Models /Views /Scripts /fonts /Contents /App_Data /App_Start Tập tin Global.asax Tập tin Web.Config Mô tả Thư mục chứa các lớp xử lý Controller của dự án Thư mục chứa các lớp đối tượng Model của dự án Thư mục đặt các View giao diện Thư mục chứa các bộ thư viện javascript được tích hợp vào sẵn của MVC hoặc là nơi bạn tổ chức và đặt các thư viện Javascript mà mình tự phát triển Chứa các mẫu font của thư viện Bootstrap Chứa nội dung tĩnh như CSS, hình ảnh hoặc các file javascript Chứa CSDL nội bộ nếu có Các lớp cấu hình của ứng dụng như Routing, Bundling (hỗ trợ nén CSS, javascript để giảm kích thước). Các lớp này được gọi trong Application_Start của Global.asax Định nghĩa các sự kiện quản lý vòng đời ứng dụng Chứa thông tin cấu hình ứng dụng 3 Ví dụ Model, View, Controller quản lý sách 3.1 Tạo mới Model namespace MVC_Day01.Models public class Book public int BookID get; set; Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 2

public string BookName get; set; public string Author get; set; public string ImageCover get; set; 3.2 Tạo Controller Tạo mới controller đặt tên là BookController dùng Template Empty Thử viết một số method. namespace MVC_Day01.Controllers public class BookController : Controller public string LayGio() return DateTime.Now.ToString(); public int SoMayMan() Random rd = new Random(); Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 3

return rd.next(10000, 99999); public string Chao(string HoTen) return "Xin chào " + HoTen; 3.3 Kiểm tra từ địa chỉ trình duyệt Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 4

3.4 Tạo Action BookList 3.5 Tạo View Tạo mới View để hiển thị danh sách Book ra giao diện: Nhấn chuột phải vào hàm BookList chọn Add -- > New view, cửa sổ mới hiện lên chọn tham số như hình Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 5

Chọn đường dẫn tới tập tin _Layout.cshtml. Code tự sinh ra: @model IEnumerable<MVC_Day01.Models.Book> @ ViewBag.Title = "BookList"; Layout = "~/Views/Shared/_Layout.cshtml"; <h2>booklist</h2> <p> @Html.ActionLink("Create New", "Create") </p> <table class="table"> <tr> <th> @Html.DisplayNameFor(model => model.bookname) </th> <th> @Html.DisplayNameFor(model => model.author) </th> <th> @Html.DisplayNameFor(model => model.imagecover) </th> <th></th> </tr> @foreach (var item in Model) <tr> <td> @Html.DisplayFor(modelItem => item.bookname) </td> <td> @Html.DisplayFor(modelItem => item.author) Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 6

</td> <td> @Html.DisplayFor(modelItem => item.imagecover) </td> <td> @Html.ActionLink("Edit", "Edit", new id=item.bookid ) @Html.ActionLink("Details", "Details", new id=item.bookid ) @Html.ActionLink("Delete", "Delete", new id=item.bookid ) </td> </tr> </table> Thử hiển thị View: Copy các hình vào thư mục Sach nằm trong thư mục Content và chỉnh sửa để hiển thị hình: Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 7

4 ViewBag, ViewData, TempData Để truyền dữ liệu giữa Controller và View ta có 3 cách sau: ViewBag, ViewData, TempData. ViewBag, ViewData: chỉ có tác dụng trong request hiện tại (chuyển View không có tác dụng) o ViewData[<key>] = <value>; o ViewBag.<Property> = <value>; TempData: cho phép truyền từ request hiện tại sang subrequest o TempData[<Key>] = <value>; 4.1 Ví dụ ViewData Thêm nội dung cho Action Index() public class TestController : Controller // GET: Test public ActionResult Index() ViewData["Message"] = "Message from ViewData"; ViewData["CurrentTime"] = DateTime.Now; return View(); Tạo View tương ứng: Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 8

4.2 Ví dụ ViewBag Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 9

4.3 TempData Thử demo: http://host:port/test/demo thì cũng chuyển sang http://host:port/test/hienthi Ths. Lương Trần Hy Hiến, KHOA CNTT TRƯỜNG ĐH SƯ PHẠM TP. HCM 10