asp. net mvc2

36
[ agilevent ASP. NET MVC2

Upload: kynan

Post on 24-Feb-2016

63 views

Category:

Documents


0 download

DESCRIPTION

ASP. NET MVC2. About. Donn Felker | Ind. Consultant | Agilevent. [email protected] [ email ] blog.donnfelker.com [ blog ] @ donnfelker [ twitter ]. Involvement. Microsoft ASP Insider | MCTS, MCP | Scrum Master - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: ASP. NET  MVC2

[ agilevent ]

ASP. NET MVC2

Page 2: ASP. NET  MVC2

[ agilevent ]

Donn Felker | Ind. Consultant | Agilevent [email protected] [email]

blog.donnfelker.com [blog] @donnfelker [twitter]

About

InvolvementMicrosoft ASP Insider | MCTS, MCP | Scrum MasterTwin Cities Dev. Guild | TwinCitiesDevelopersGuild.com

Twin Cities GiveCamp | TwinCitiesGiveCamp.orgTwin Cities Pragmatic Beer | TwinCitiesPragmaticBeer.com

.NET Dime Casts | DimeCasts.net

Page 3: ASP. NET  MVC2

[ agilevent ]

EXPECTATIONS { YOU HAVE EXP. WITH MVC }

{ THIS IS NOT A “WHAT IS MVC” TALK }(however … I would be happy to answer questions about HOWTO scenarios

after the presentation)

Page 4: ASP. NET  MVC2

[ agilevent ]

MVC 2 NEW STUFF

TOOLSVS2010 / MVC2 RC2RESHARPER EAP 5.0

Page 5: ASP. NET  MVC2

[ agilevent ]

UPGRADING TO MVC2EXPRESSION BASED HELPERSAREASVALIDATION LIST BINDINGDEFAULT VALUE PARAMETERSUI HINTDISPLAY & EDITOR TEMPLATESASYNC CONTROLLER

Page 6: ASP. NET  MVC2

[ agilevent ]

EXAMPLE APPCODE CAMP

EVALS

Page 7: ASP. NET  MVC2

[ agilevent ]

UPGRADING TO MVC 2

2 WAYS TO MVC2

AUTOMAGICALLY &

MANUAL

Page 8: ASP. NET  MVC2

[ agilevent ]

AUTOMAGICALLY

EILON LIPTONS MVC 2 CONVERTERhttp://bit.ly/mvc2converter

Page 9: ASP. NET  MVC2

[ agilevent ]

MANUAL5. Update

references to 2.0

6. Binding Redirect from 1.0 to 2.0

7. [Copy Scripts]

8. Compile App fix any errors

1. Backup of the existing project.

2. Replace Project Type Guids

3. Web.config: replace System.Web.Mvc 1.0 with 2.0

4. Repeat with Web.config in views folder

Page 10: ASP. NET  MVC2

[ agilevent ]

MANUAL | LONG BUT THOROUGHhttp://bit.ly/Mvc2Upgrade

Page 11: ASP. NET  MVC2

[ agilevent ]

CONTROLLER ACTION VERBS { IMPROVEMENTS }

Page 12: ASP. NET  MVC2

[ agilevent ]

CONTROLLER ACTION VERBS { IMPROVEMENTS }

Page 13: ASP. NET  MVC2

[ agilevent ]

EXPRESSION BASED HTML HELPERS

Page 14: ASP. NET  MVC2

[ agilevent ]

EXPRESSION BASED GOODNESS

EXAMPLE<%= Html.TextBoxFor(x => x.FirstName) %>

OTHER HELPERSTextBox, Label, Hidden, CheckBox, Display, Editor

Page 15: ASP. NET  MVC2

[ agilevent ]

STRONGLY TYPED HTML HELPERS

DEMO

Page 16: ASP. NET  MVC2

[ agilevent ]

EDITOR & DISPLAY TEMPLATESCUSTOM FUNCTIONALITY MADE EASY

Page 17: ASP. NET  MVC2

[ agilevent ]

DISPLAYING ALL DATESWith jQuery’s DatePicker

Page 18: ASP. NET  MVC2

[ agilevent ]

EDITOR & DISPLAY TEMPLATES

DEMO

Page 19: ASP. NET  MVC2

[ agilevent ]

LIST BINDING MADE EASYTHE EDITABLE GRID

Page 20: ASP. NET  MVC2

[ agilevent ]

THE GRID

Page 21: ASP. NET  MVC2

[ agilevent ]

LIST BINDING | EDITABLE GRID

DEMO

Page 22: ASP. NET  MVC2

[ agilevent ]

VALIDATION DATA ANNOTATIONSBUILT IN VALIDATION

Page 23: ASP. NET  MVC2

[ agilevent ]

PREVIOUS VALIDATIONCUSTOM MODEL BINDERS / CONTROLLERS / ETC

(validation taking place in a custom model binder)

Page 24: ASP. NET  MVC2

[ agilevent ]

UPDATED VALIDATIONATTRIBUTE BASED VALIDATION

Page 25: ASP. NET  MVC2

[ agilevent ]

DATA ANNOTATIONS

DEMO

Page 26: ASP. NET  MVC2

[ agilevent ]

DEFAULT VALUES FOR ACTIONSDECORATING ACTION PARAMETERS

Page 27: ASP. NET  MVC2

[ agilevent ]

DefaultValueAttributePRIMITIVE TYPES OR POCO

Page 28: ASP. NET  MVC2

[ agilevent ]

SEPARATION OF CONCERNS { PROJECT AREAS }

Page 29: ASP. NET  MVC2

[ agilevent ]

SINGLE PROJECTMULTIPLE PROJECT

Page 30: ASP. NET  MVC2

[ agilevent ]

SINGLE PROJECTAREAS EXIST IN THE SAME MVC2 PROJECT

Page 31: ASP. NET  MVC2

[ agilevent ]

MULTIPLE PROJECTAREAS EXIST IN DIFFERENT MVC2 PROJECTS

REMOVED FROM MVC2{ MOVED INTO MVC FUTURES }

Page 32: ASP. NET  MVC2

[ agilevent ]

SINGLE PROJECT AREAS

DEMO

Page 33: ASP. NET  MVC2

[ agilevent ]

ASYNC CONTROLLLERS | EDGE CASEFOR HIGH PERFORMANCE SITES

Page 34: ASP. NET  MVC2

[ agilevent ]

THE EDGE CASEINTENDED TO BOOST SERVER CAPACITY

http://bit.ly/Mvc2AsyncControllers

IN DEPTH INFO BY S. SANDERSON & R. CONERY

PROCESS : 1. MVC CONTROLLER REQUEST STARTS2. CONTROLLER CREATES A BLOCKING CALL

SUCH AS A SQL DB CALL 3. MVC RELEASES THREAD BACK TO ASP.NET

WORKER PROCESS THREAD POOL4. WHEN BLOCKING CALL COMPLETES, MVC

GRABS A FREE WORKER THREAD, REATTACHES HTTPCONTEXT, COMPLETES REQUEST

http://tekpub.com/preview/aspmvc

Page 35: ASP. NET  MVC2

[ agilevent ]

Thank You

Page 36: ASP. NET  MVC2

[ agilevent ]

DONN [email protected] | emailblog.donnfelker.com | blog

Presentation will be available within 24 hours on my blog

UPCOMING EVENTSAPR. 6th | TC Dev Guild |Android Dev. for .NET DevelopersAPR. 10th | TC Code Camp | Introduction to Android Dev.~1-2 Wks| TekPub | Developing an Android Application