MVC không phải là một mô hình lập trình mới lạ gì, và thậm chí, nó còn ra đời từ rất sớm. Có thể nói ASP.NET MVC là mô hình lập trình web chiến lược của Microsoft. Do đó, đối với những ai yêu mến và đi theo .NET, phát triển ứng dụng web với ASP.NET MVC sẽ là một kỹ năng không thể thiếu được.
Mình sẽ cố gắng xây dựng một chuỗi bài "hướng dẫn cơ bản" về ASP.NET MVC5 (và từ giờ sẽ nói ngắn gọn là MVC5 vì mình chỉ chơi với .NET). Mục tiêu của chuỗi bài này là để hướng dẫn, tham khảo và chia sẻ các kiến thức liên quan đến MVC5 dành cho tất cả mọi người, và cố gắng viết theo ngôn ngữ "bình dân" nhất để những ai mới làm quen không bị bỡ ngỡ. Và điều quan trọng, đi kèm với những bài giới thiệu và các ví dụ demo để các bạn hiểu rõ hơn vấn đề.
Kiến trúc của MVC
a. Model
Model chứa và thể hiện các đặc tính và logic ứng dụng. Theo một cách hiểu khác, Model thay mặt cho dữ liệu và logic cốt lõi. Nó chính là những lớp (class) chứa thông tin về các đối tượng mà ta cần thao tác, làm việc trên nó. Ví dụ: “Sách” chứa các thông tin như “Tên”, “Ngày phát hành”, “Giá”, “Nhà sản xuất”, …
b. View
View làm nhiệm vụ thể hiện 1 Model hay nhiều Model một cách trực quan. Nôm na là nó nhận thông tin (1 Model hay nhiều Model) sau đó biểu diễn lên trang web
c. Controller
Controller nằm giữa tầng View và Model; làm nhiệm vụ tìm kiếm, xử lý 1 hay nhiều Model, sau đó gửi Model tới View để View hiển thị.
1. Giới thiệu web API
1.1 Giới thiệu về API
- Application Programming Interface :Giao diện ứng dụng lập trình
- API là các hàm , cách để cho các ứng dụng bên ngoài có thể gọi , tương tác để trao đổi thông tin , tính toán.
- Việc trao đổi này giúp các nhà lập trình tạo ra các service hỗ trợ những lập trình viên khác có thể tương tác với ứng dụng của chính mình
- Hiện nay trên web các dịch vụ của google , facebook cung cấp rất nhiều api để lập trình viên có thể xây dựng tương tác giữa website của họ với google ,facebook
- Mỗi phần mềm,ứng dụng có các cung cấp các API để các ứng dụng khác có thể tương tác với nó.Và việc xây dựng lên các API để cho các ứng dụng bên ngoài cũng cần tuân thủ các chuẩn công nghệ để nhiều nền tảng công nghệ có thể sử dụng được API mà ứng dụng cung cấp.
1.2 Giới thiệu web api
- Web API là một phiên bản kế tiếp của WCF , giúp chúng ta xây dựng lên các Service cung cấp dịch vụ cho các ứng dụng web , window …
- Trước web API chúng ta để có các service API chúng ta phải cấu hình , xây dựng các ứng dụng wcf , web service khá phức tạp .
- Một ứng dụng đơn giản như là : Chúng ta có 1 Web API cung cấp các dịch vụ lưu trữ dữu liệu , cung cấp các chỉ số chứng khoán ,kết quả bóng đá , xổ số …
- Các ứng dụng Client như website , ứng dụng winform , wpf có thể kết nối vào Web API để lấy các dữ liệu về xử lý , cũng như cập nhật thông tin lại Web API
- Web API dùng cách trao đổi dữ liệu là HTTP , kiểu dữ liệu trao đổi là JSON , một chuẩn dữ liệu hướng đối tượng được dùng khá nhiều trong việc lưu chuyển thông tin trên Internet .
- Do dùng jSon là kiểu dữ liệu chuyển đổi nên tốc độ các trang web sử dụng web API tương tác dữ liệu có tốc độ khá cao .Ngoài ra do Web API dùng giao thức HTTP nên hầu như tất cả các ứng dụng trên các công nghệ đều có thể kết nối tới để lấy cũng như tương tác với web API cụ thể như chúng ta có thể dùng các công nghệ web như : Asp.net ( MVC ,Web Page , Web form) ,PHP , jsp hay các ứng dụng desktop như : winform , wpf đều có thể dễ dàng kết nối tới web API
- Với Web API chúng ta có thể xây dựng và phân tách các ứng dụng web lớn .Cấu hình từng thành phần riêng biệt của website .Đâu là tầng data , đâu là tầng xử lý , đâu là tầng dịch vụ …Nền tảng của các ứng dụng lớn luôn là các service để các website thành viên có thể kết nối tương tác dữ liệu .
- Do đó với Web API chúng ta có thể ứng dụng vào các dự án Web ( cũng như window) lớn để phát triển trên nhiều tầng xử lý khác nhau
- Dùng web API chúng ta dễ dàng xây dựng các ứng dụng window kiểu điện toán ( dữ liệu ở server) còn client chỉ cài giao diện .
Hay có thể xây dựng các website Single Page Application (SPA)( tất cả web chỉ gói gọn trong 1 trang) .Ứng dụng này tương tác khá cao với người dùng , tốc độ nhanh ( do dùng ajax) thường được dùng làm các website tương tác với các thiết bị di động ( các thiết bị di động thường có kết nối Internet chậm )
1.2 Hướng dẫn thực hành và công cụ phát triển web API
- Để hiểu bản chất các ví dụ thực hành các bạn cần có các kiến thức về web MVC ,Web Page hay các ứng dụng Client như winform , wpf , Console
- Đặc biệt các bạn có kiến thức về lập trình web MVC sẽ rất dê dàng hiểu được web API , do kỹ thuật lập trình trong web API khá giống web MVC ( không giống như web Page (Razor ) hay web form)
- Ngoài ra với các ứng dụng web kết nối tới web Api dùng javascript các bạn cần có các kiến thức về javascript , jQuery đặc biệt là lập trình hướng đối tượng trong javascript để xây dựng các ứng dụng tương tác tốt hơn với người dùng .
- Trong quá trình học các bạn có thể kết hợp xem thêm mã nguồn chúng tui đính kèm.
- Mã nguồn đính kèm có 2 Project :
+) Mã nguồn web API , và các file html kết nối tới web api lấy dữ liệu
+) Mã nguồn window App là project kết nối tới web API từ các ứng dụng Console , wpf
- Máy tính các bạn cần cài đặt Visual Studio 2013 (có thể là Visual Studio 2012) để mở Project mẫu cũng như làm công cụ để phát triển ứng dụng web API
Do Drive thay đổi chính sách, nên một số link cũ yêu cầu duyệt download. các bạn chỉ cần làm theo hướng dẫn.
Password giải nén nếu cần: ket-noi.com | Bấm trực tiếp vào Link để tải:
Xem thêm
Giáo trình Lập trình với ASP.net
Giáo trình lập trình Web API Service (MVC5) với ASP.net tiếng Việt
Tổng hợp các thủ thuật lập trình asp.net
Giáo trình ASP.NET Tiếng việt Pro - Lập trình với C#
Giáo trình Asp.net 3.5
Lập trình ứng dụng web với ASP.NET
Mình sẽ cố gắng xây dựng một chuỗi bài "hướng dẫn cơ bản" về ASP.NET MVC5 (và từ giờ sẽ nói ngắn gọn là MVC5 vì mình chỉ chơi với .NET). Mục tiêu của chuỗi bài này là để hướng dẫn, tham khảo và chia sẻ các kiến thức liên quan đến MVC5 dành cho tất cả mọi người, và cố gắng viết theo ngôn ngữ "bình dân" nhất để những ai mới làm quen không bị bỡ ngỡ. Và điều quan trọng, đi kèm với những bài giới thiệu và các ví dụ demo để các bạn hiểu rõ hơn vấn đề.
ASP.NET MVC được thiết kế một cách gọn nhẹ, giảm thiểu sự phức tạp của việc xây dựng ứng dụng web bằng cách chia 1 ứng dụng thành 3 tầng (layer): Model, View và Controller. Sự chia nhỏ này giúp lập trình viên dễ dàng kiểm soát các thành phần trong khi phát triển, cũng như lợi ích lâu dài trong việc kiểm tra, bảo trì và nâng cấp.
Kiến trúc của MVC
MVC là một thiết kế dựa trên nguyên tắc chia các thành phần ứng dụng thành 3 tầng cơ bản:

a. Model
Model chứa và thể hiện các đặc tính và logic ứng dụng. Theo một cách hiểu khác, Model thay mặt cho dữ liệu và logic cốt lõi. Nó chính là những lớp (class) chứa thông tin về các đối tượng mà ta cần thao tác, làm việc trên nó. Ví dụ: “Sách” chứa các thông tin như “Tên”, “Ngày phát hành”, “Giá”, “Nhà sản xuất”, …
b. View
View làm nhiệm vụ thể hiện 1 Model hay nhiều Model một cách trực quan. Nôm na là nó nhận thông tin (1 Model hay nhiều Model) sau đó biểu diễn lên trang web
c. Controller
Controller nằm giữa tầng View và Model; làm nhiệm vụ tìm kiếm, xử lý 1 hay nhiều Model, sau đó gửi Model tới View để View hiển thị.
1. Giới thiệu web API
1.1 Giới thiệu về API
- Application Programming Interface :Giao diện ứng dụng lập trình
- API là các hàm , cách để cho các ứng dụng bên ngoài có thể gọi , tương tác để trao đổi thông tin , tính toán.
- Việc trao đổi này giúp các nhà lập trình tạo ra các service hỗ trợ những lập trình viên khác có thể tương tác với ứng dụng của chính mình
- Hiện nay trên web các dịch vụ của google , facebook cung cấp rất nhiều api để lập trình viên có thể xây dựng tương tác giữa website của họ với google ,facebook
- Mỗi phần mềm,ứng dụng có các cung cấp các API để các ứng dụng khác có thể tương tác với nó.Và việc xây dựng lên các API để cho các ứng dụng bên ngoài cũng cần tuân thủ các chuẩn công nghệ để nhiều nền tảng công nghệ có thể sử dụng được API mà ứng dụng cung cấp.
1.2 Giới thiệu web api
- Web API là một phiên bản kế tiếp của WCF , giúp chúng ta xây dựng lên các Service cung cấp dịch vụ cho các ứng dụng web , window …
- Trước web API chúng ta để có các service API chúng ta phải cấu hình , xây dựng các ứng dụng wcf , web service khá phức tạp .
- Một ứng dụng đơn giản như là : Chúng ta có 1 Web API cung cấp các dịch vụ lưu trữ dữu liệu , cung cấp các chỉ số chứng khoán ,kết quả bóng đá , xổ số …
- Các ứng dụng Client như website , ứng dụng winform , wpf có thể kết nối vào Web API để lấy các dữ liệu về xử lý , cũng như cập nhật thông tin lại Web API
- Web API dùng cách trao đổi dữ liệu là HTTP , kiểu dữ liệu trao đổi là JSON , một chuẩn dữ liệu hướng đối tượng được dùng khá nhiều trong việc lưu chuyển thông tin trên Internet .
- Do dùng jSon là kiểu dữ liệu chuyển đổi nên tốc độ các trang web sử dụng web API tương tác dữ liệu có tốc độ khá cao .Ngoài ra do Web API dùng giao thức HTTP nên hầu như tất cả các ứng dụng trên các công nghệ đều có thể kết nối tới để lấy cũng như tương tác với web API cụ thể như chúng ta có thể dùng các công nghệ web như : Asp.net ( MVC ,Web Page , Web form) ,PHP , jsp hay các ứng dụng desktop như : winform , wpf đều có thể dễ dàng kết nối tới web API
- Với Web API chúng ta có thể xây dựng và phân tách các ứng dụng web lớn .Cấu hình từng thành phần riêng biệt của website .Đâu là tầng data , đâu là tầng xử lý , đâu là tầng dịch vụ …Nền tảng của các ứng dụng lớn luôn là các service để các website thành viên có thể kết nối tương tác dữ liệu .
- Do đó với Web API chúng ta có thể ứng dụng vào các dự án Web ( cũng như window) lớn để phát triển trên nhiều tầng xử lý khác nhau
- Dùng web API chúng ta dễ dàng xây dựng các ứng dụng window kiểu điện toán ( dữ liệu ở server) còn client chỉ cài giao diện .
Hay có thể xây dựng các website Single Page Application (SPA)( tất cả web chỉ gói gọn trong 1 trang) .Ứng dụng này tương tác khá cao với người dùng , tốc độ nhanh ( do dùng ajax) thường được dùng làm các website tương tác với các thiết bị di động ( các thiết bị di động thường có kết nối Internet chậm )
1.2 Hướng dẫn thực hành và công cụ phát triển web API
- Để hiểu bản chất các ví dụ thực hành các bạn cần có các kiến thức về web MVC ,Web Page hay các ứng dụng Client như winform , wpf , Console
- Đặc biệt các bạn có kiến thức về lập trình web MVC sẽ rất dê dàng hiểu được web API , do kỹ thuật lập trình trong web API khá giống web MVC ( không giống như web Page (Razor ) hay web form)
- Ngoài ra với các ứng dụng web kết nối tới web Api dùng javascript các bạn cần có các kiến thức về javascript , jQuery đặc biệt là lập trình hướng đối tượng trong javascript để xây dựng các ứng dụng tương tác tốt hơn với người dùng .
- Trong quá trình học các bạn có thể kết hợp xem thêm mã nguồn chúng tui đính kèm.
- Mã nguồn đính kèm có 2 Project :
+) Mã nguồn web API , và các file html kết nối tới web api lấy dữ liệu
+) Mã nguồn window App là project kết nối tới web API từ các ứng dụng Console , wpf
- Máy tính các bạn cần cài đặt Visual Studio 2013 (có thể là Visual Studio 2012) để mở Project mẫu cũng như làm công cụ để phát triển ứng dụng web API

Do Drive thay đổi chính sách, nên một số link cũ yêu cầu duyệt download. các bạn chỉ cần làm theo hướng dẫn.
Password giải nén nếu cần: ket-noi.com | Bấm trực tiếp vào Link để tải:
You must be registered for see links
Xem thêm
Giáo trình Lập trình với ASP.net
Giáo trình lập trình Web API Service (MVC5) với ASP.net tiếng Việt
Tổng hợp các thủ thuật lập trình asp.net
Giáo trình ASP.NET Tiếng việt Pro - Lập trình với C#
Giáo trình Asp.net 3.5
Lập trình ứng dụng web với ASP.NET