asp. net mvc2
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 PresentationTRANSCRIPT
[ agilevent ]
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
[ 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)
[ agilevent ]
MVC 2 NEW STUFF
TOOLSVS2010 / MVC2 RC2RESHARPER EAP 5.0
[ agilevent ]
UPGRADING TO MVC2EXPRESSION BASED HELPERSAREASVALIDATION LIST BINDINGDEFAULT VALUE PARAMETERSUI HINTDISPLAY & EDITOR TEMPLATESASYNC CONTROLLER
[ agilevent ]
EXAMPLE APPCODE CAMP
EVALS
[ agilevent ]
UPGRADING TO MVC 2
2 WAYS TO MVC2
AUTOMAGICALLY &
MANUAL
[ agilevent ]
AUTOMAGICALLY
EILON LIPTONS MVC 2 CONVERTERhttp://bit.ly/mvc2converter
[ 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
[ agilevent ]
MANUAL | LONG BUT THOROUGHhttp://bit.ly/Mvc2Upgrade
[ agilevent ]
CONTROLLER ACTION VERBS { IMPROVEMENTS }
[ agilevent ]
CONTROLLER ACTION VERBS { IMPROVEMENTS }
[ agilevent ]
EXPRESSION BASED HTML HELPERS
[ agilevent ]
EXPRESSION BASED GOODNESS
EXAMPLE<%= Html.TextBoxFor(x => x.FirstName) %>
OTHER HELPERSTextBox, Label, Hidden, CheckBox, Display, Editor
[ agilevent ]
STRONGLY TYPED HTML HELPERS
DEMO
[ agilevent ]
EDITOR & DISPLAY TEMPLATESCUSTOM FUNCTIONALITY MADE EASY
[ agilevent ]
DISPLAYING ALL DATESWith jQuery’s DatePicker
[ agilevent ]
EDITOR & DISPLAY TEMPLATES
DEMO
[ agilevent ]
LIST BINDING MADE EASYTHE EDITABLE GRID
[ agilevent ]
THE GRID
[ agilevent ]
LIST BINDING | EDITABLE GRID
DEMO
[ agilevent ]
VALIDATION DATA ANNOTATIONSBUILT IN VALIDATION
[ agilevent ]
PREVIOUS VALIDATIONCUSTOM MODEL BINDERS / CONTROLLERS / ETC
(validation taking place in a custom model binder)
[ agilevent ]
UPDATED VALIDATIONATTRIBUTE BASED VALIDATION
[ agilevent ]
DATA ANNOTATIONS
DEMO
[ agilevent ]
DEFAULT VALUES FOR ACTIONSDECORATING ACTION PARAMETERS
[ agilevent ]
DefaultValueAttributePRIMITIVE TYPES OR POCO
[ agilevent ]
SEPARATION OF CONCERNS { PROJECT AREAS }
[ agilevent ]
SINGLE PROJECTMULTIPLE PROJECT
[ agilevent ]
SINGLE PROJECTAREAS EXIST IN THE SAME MVC2 PROJECT
[ agilevent ]
MULTIPLE PROJECTAREAS EXIST IN DIFFERENT MVC2 PROJECTS
REMOVED FROM MVC2{ MOVED INTO MVC FUTURES }
[ agilevent ]
SINGLE PROJECT AREAS
DEMO
[ agilevent ]
ASYNC CONTROLLLERS | EDGE CASEFOR HIGH PERFORMANCE SITES
[ 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
[ agilevent ]
Thank You
[ 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