You are on page 1of 53

ASP.

NET MVC
Ging vin:
ThS. Phm Thi Vng
Sinh vin:
1. V Minh Tr 09520447
2. Nguyn Ngc Vit 09520453
3. Trn Trng Nhn 10520108
4. on Minh Tin 10520404
ASP.NET MVC
Ni dung trnh by
Tng quan v ASP.NET MVC
Identity
Bootstrap
WebAPI 2
Entity Framework 6
SignalR

Slide: 2
Tng quan
ViewState: l c ch chnh duy tr trng thi qua mi ln
request
Cc control b gii hn trn m HTML.
Cm nhn sai trong vic phn tch code ra khi m HTML bng
cch to code- behind.
Kh kim th.
ASP.NET MVC Slide: 5
Nhc im ca ASP.NET
MVC:





ASP.NET MVC gip thit k web theo m hnh MVC
c im ni bt: Nh, d kim th giao din, tich hp cc
tinhd nng sn c ca ASP.NET,
ASP.NET MVC Slide: 6
ASP.NET MVC
Controler View
Model
Http
Request
Http
Response
Selects &
Renders
Initializes
Reads Data
to Render
MVC: c pht minh bi Trygve Renskaug (1978). Tn gi ban
u l Thing Model View Editor pattern.
ASP.NET MVC ln u tin xut hin l trong d n m
ngun m MonoRail.
Ngun gc tht s cho ra i cng ngh Microsoft ASP.NET
MVC l do Scott Guthrie (mt trong nhng nh sng to ra
ASP.NET) trn chuyn bay n Austin, Texas ni v hi tho
Alt.NET vo thng 10-2007.
u nm 2009 phin bn ASP.NET MVC 1.0.
Phin bn hin ti: 5.1 ( 17/01/2014).
ASP.NET MVC Slide: 7
ASP.NET MVC 1.0
C tnh m rng do c th thay th tng thnh phn mt cch
d dng
Khng s dng viewstate, iu ny lm cc nh pht trin d
dng iu khin ng dng ca mnh.
H thng nh tuyn mi mnh m
H tr tt hn cho test-driven development (TDD) ci t cc
unit tests t ng, xc nh v kim tra li cc yu cu trc khi
bt tay vo vit code.
H tr kt hp rt tt gia ngi lp trnh v ngi thit k giao
din.
S dng cc tnh nng tt nht c ca ASP.NET
ASP.NET MVC Slide: 8
u im
Khng hng s kin lm cho cc nh pht trin ASP.NET
webform kh khn.
Yu cu hiu bit v HTTP, HTML, CSS v JavaScript.
Th vin ca nh phn phi th ba khng mnh.
ASP.NET MVC Slide: 9
Nhc im
OWIN and Katana
Identity
ASP.NET MVC Slide: 12
Authentication
All anonymous users

ASP.NET MVC Slide: 13
No Authentication
Forms authentication
Can also enable Microsoft, Google, Facebook, Twitter

ASP.NET MVC Slide: 14
Individual User Accounts
Active Directory Federation Services (Azure, Office 365, Local, )
ASP.NET MVC Slide: 15
Organization Accounts
Intranet - no anonymous users

ASP.NET MVC Slide: 16
Windows Authentication

ASP.NET MVC Slide: 17
Registration

ASP.NET MVC Slide: 18
Authorize
OpenID, OAuth

ASP.NET MVC Slide: 19
External Login
ASP.NET MVC Slide: 20
Bootstrap
B cng c Bootstrap c to bi
Twitter gip bn lm CSS nhanh
hn khi bt u pht trin mt
website mi.
Twitter Bootstrap bao gm cc m
CSS + HTML c bn cho
typography, forms, buttons, tables,
grids, navigation, v nhiu thnh
phn khc ca website.
ASP.NET MVC Slide: 22
Bootstrap
H tr kh nng Responsive: tc l trang web s t ng co
gin theo kch thc ca ca s trnh duyt.
Tng thch tt vi thit b c nh: vi s ph bin ca
smartphone hin nay, y l mt yu t quan trng. Khng cn
phi design mt bn ring cho mobile, vi bootstrap bn ch
cn thit k mt ln cho mi thit b.
c tch hp vi th vin jQuery v tng tc tt vi chun
HTML5 v CSS3.
ASP.NET MVC Slide: 23
u im
Trong Bootstrap, layout s c chia thnh 12 ct, mi ct s
chim t l % nht nh v bng nhau trn layout.
n v c s tnh rng cho cc element m bn b tr trn
layout s l ct.
ASP.NET MVC Slide: 24
Bootstrap Grid System
ASP.NET MVC Slide: 25
Bootstrap Responsive
K hiu lp Thit b
rng lp
container
Ch thch
.col-xs-$ Extra small Auto Dng cho in thoi kch thc nh hn 768px
.col-sm-$ Small devices 750px Dng cho tablets kch thc >= 768px
.col-md-$ Medium devices 970px Dng cho desktop ( >=992px)
.col-lg-$ Large devices 1170px Dng cho desktops >=1200px
Glyphicons, Dropdowns, Button groups, Button dropdowns,
Input groups, Navs, Navbar, Breadcrumbs, Pagination, Labels,
Badges, Jumbotron, Page header, Thumbnails, Alerts, Progress
bars, Media object, List group, Panels, Wells

Tham kho: http://getbootstrap.com/components/
ASP.NET MVC Slide: 26
Bootstrap Components
WebAPI 2
Attribute Routing
IHttpActionResult
Cross Origin Resource Sharing
Authenticated WebAPI

ASP.NET MVC Slide: 28
ASP.NET MVC Slide: 29
Authenticated WebAPI
ASP.NET MVC Slide: 30
Authenticated WebAPI
ASP.NET MVC Slide: 31
Attribute Routing
Why Attribute Routing?
ASP.NET MVC Slide: 32
Attribute Routing
Configuring Web API
ASP.NET MVC Slide: 33
Attribute Routing
Adding Route Attributes
ASP.NET MVC Slide: 34
Route Prefixes
S dng (~) thuc tnh ghi Route prefix
Route prefix c th cha tham s
ASP.NET MVC Slide: 35
Route Constraints
ASP.NET MVC 36
ASP.NET MVC
URI Parameters and Default Values
Slide: 37
/api/books/locale/1033 v /api/books/locale
1. Compare the RouteOrder property of the route attribute.
2. Look at each URI segment in the route template. For each
segment, order as follows:
a. Literal segments.
b. Route parameters with constraints.
c. Route parameters without constraints.
d. Wildcard parameter segments with constraints.
e. Wildcard parameter segments without constraints.
3. In the case of a tie, routes are ordered by a case-insensitive
ordinal string comparison (OrdinalIgnoreCase) of the route
template.
ASP.NET MVC Slide: 38
ASP.NET MVC Slide: 39
ASP.NET MVC
Cross Origin Resource Sharing
Slide: 40
Enable CORS in Web API
ASP.NET MVC
Phm vi ca [EnableCors]
Slide: 41
Action
Controller
Globally
Entity Framework
ASP.NET MVC Slide: 43
Entity Framework l mt cng c ORM h tr bi Microsoft
Cch thc tng tc vi CSDL
Cc thnh phn trong Entity Framework
Code l m lnh to thnh cc lp i tng d liu cho php thao tc
vi d liu.
Model l s gm cc hp m t cc thc th v cc ng ni kt
m t cc quan h.
Database l c s d liu (c th l SQL Server, Compact SQL Server,
Local database, MySQL, Oracle,)
Entity Framework
ASP.NET MVC Slide: 44
Ba phng php tip cn vi Entity Framework:






Code First l phng n mm do nht
Entity Framework
Code First Migration cp n vn bn gp phi khi cp
nht CSDL nh thm ct, xa ct, to bng mi v cp nht vo
CSDL ang c khi bn s dng Code First trong Entity
Framework.
Vic cp nht s c thc hin t ng mi khi c thay i
trong cc model m bn khai bo.
ASP.NET MVC Slide: 45
Code First Migrations
Xy dng cc lp Model
Kch hot chc nng Migrations
Xy dng bc chuyn i CSDL
Ty chnh Migrations
Gi cu lnh SQL trong Migration
Chuyn CSDL v mt phin bn ch nh
Ly m SQL dng chuyn i CSDL
ASP.NET MVC Slide: 46
Code First Migrations

ASP.NET MVC Slide: 47
Scaffolding
SignalR
nh ngha
Phn loi
ng dng

ASP.NET MVC Slide: 49
SignalR l mt th vin lp trnh do 2 thnh vin ca i pht
trin ASP.net Microsoft pht trin. SignalR cho php lp trnh
vin to knh lin lc gia server v client theo c ch
notification.

ASP.NET MVC Slide: 50
nh ngha
WebSockets (ch chy trn server ASP.NET 4.5 / IIS 8)
Server Sent Events
Forever Frame
Ajax Long Polling

ASP.NET MVC Slide: 51
Phn loi
Thay th c ch giao tip client server : pooling thng thng
ng dng trong cc mng x hi
ASP.NET MVC Slide: 52
ng dng
Kt lun
Cm n thy v cc bn!

You might also like