Bài s 3
Tng quan v ASP.NET MVC Framework
Table of Contents
1 Tại sao sử dụng ASP.NET MVC ............................................................................................ 2
1.1 ASP.NET MVC là gì ................................................................................................................. 2
1.1.1 Mô hình MVC cơ bản .................................................................................................... 2
1.1.2 Một vài đặc tính trong ASP.NET MVC ........................................................................... 2
1.2 Sự khác biệt với WebForm ..................................................................................................... 3
2 Ví dụ xây dựng ứng dụng với ASP.NET MVC Framework ................................................ 4
2.1 Tạo Project với ASP.NET MVC Web Application ........................................................................ 4
2.2 Tìm hiểu định tuyến URL ............................................................................................................ 8
2.3 Xây dựng mô hình dữ liệu .......................................................................................................... 9
2.3.1 Tao cơ s dữ liệu .......................................................................................................... 9
2.3.2 S dung mô hình LINQ to SQL ..................................................................................... 10
2.4 Tìm hiểu về Controllers ............................................................................................................ 14
2.5 Tìm hiểu về Views ..................................................................................................................... 16
2.6 Tìm hiểu về Models .................................................................................................................. 18
2.7 Cấu trúc Views\Shared\Site.Master ......................................................................................... 20
2.8 Kết quả ...................................................................................................................................... 21
3 Câu hỏi ôn tập ....................................................................................................................... 21
4 Tài liệu tham khảo ................................................................................................................ 22
Microsoft Vietnam – DPE Team |Bài số 3: Tổng quan về ASP.NET MVC Framework
2 1 Tại sao s dụng ASP.NET MVC
1.2 Sự khác biệt với WebForm
ASP.NET WebForm s d quu có lifecycle, postback và dùng các
thc hing cho UI khi có s tác vi dùng nên hu ht
ASP.NET WebForm x lý chm.
ASP.NET MVC Framework chia ra thành 3 phn: Models, Views, Controllers. Mi dùng vi
Views s c thc hi ng trong Controllers, không còn postback, không còn lifecycle không còn
events.
Vic kim tra ( test ), g li ( debug ) vu phi chy tt c các tin trình ca ASP.NET và mi s
i ID ca bt k n ng di vi ASP.NET MVC Framework thì vic
có th s dng các unit test có th thnh rt d dàng các Controller thc hi nào.
Tính năng ASP.NET 2.0 ASP.NET MVC
Ki Kin trúc mô hình WebForm
Business Database
Kin trúc s dng vic phân chia
Models, Views
S dng cú pháp ca webform, tt
các s kin và controls do server
qun lý
Các s ki u khin bi
controllers, các controls không do
server do server qun lý
Truy cp d liu S dng hu ht các công ngh truy
cp d liu trong ng dng
Phn ln dùng LINQ to SQL class
to mô hình truy cng
Debug i thc hin
tt c bao gm các lp truy cp d
liu, s hin th u khin các
controls
2.1 To Project
.NET MVC Web Application
t ASP.NET MVC Framework: File New Project Windows
C# ASP.NET MVC Web Application ( xem Figure 2).
Figure 2.
Khi to mt ASP.NET MVC Framework thì mt hp thoi Unit Test xut hin. Chn Yes nu mun to mt
Project Test, chn No nu không mun to mt Unit Test. ( xem Figure 3)
Microsoft Vietnam – DPE Team |Bài số 3: Tổng quan về ASP.NET MVC Framework
5 Figure 3.
Sau khi mt ng dc to, nhìn vào trong mc Solution Explorer s thy
xut hin mc: Models, Views, Controllers chng vi các thành phn
Models, Views, Controllers trong mô hình MVC.
M rng folder Controllers s thy HomeController.cs, m rng Views s thy folder Home, Shared và Account.
M rng folder Home s thy About.aspx và Index.aspx ( xem hình Figure 4 )
Microsoft Vietnam – DPE Team |Bài số 3: Tổng quan về ASP.NET MVC Framework
6 Figure 4. Solution Explorer MVC
Chy ng dng bng cách n F5. Nu là ng dng mi to lu thì s có thông báo hi có cho phép m ch
Debug hay không? Nng ý chn debug chn
. ( xem Figure 5).
Microsoft Vietnam – DPE Team |Bài số 3: Tổng quan về ASP.NET MVC Framework
7
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route
name
"{controller}/{action}/{id}", // URL with
parameters
new { controller = "Home", action = "Index", id = "" } //
Parameter defaults
);
}
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
}
}
Khi ng dng chy lu tiên, phc gc này gi m
th to ra bnh tuyn.
nh tuyn mnh chia mn, mn nm gia 2 du tiên
cha tên mn th 2 chn th 3 là tham s u vào ca
controller action.
Ví d: va ch /Product/Details/3 c hiu là:
Controller = ProductController
Action = Detail
Id = 3
Controller mnh s là HomeController, Action mnh là Index, Id m http://localhost:1727/
Ví d: va ch /Employee: