12
Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: [email protected] G+: +JonathanPeterson42 GitHub & StackOverflow: Eonasdan

Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: [email protected]@paladincloudware.com G+: +JonathanPeterson42 GitHub &

Embed Size (px)

Citation preview

Page 1: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

Jonathan PetersonPaladin Cloudware

FILE -> NEW PROJECT

E: [email protected]+: +JonathanPeterson42GitHub & StackOverflow: Eonasdan

Page 2: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

DEFAULT VS MVC PROJECT• Extra Packages like Modernizr

• Messy Code

• Hour + of preparation to get a project ready

Page 3: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

HOW WE’RE GOING TO FIX IT• Using PowerShell to get things going

• Less

• Web.config

• Code templates

• Data annotations

• EditorFor Templates

• Bundles

Page 4: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

USING POWERSHELL TO GET THINGS SETUP• PowerShell can be used to automate our first task

• Uninstall packages I don’t want

• Install packages I always install

• Update all the packages that are installed

Page 5: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

USING LESS• Less gives us Mixins

• Parameters and variables

• Separate files

Page 6: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

WEB.CONFIG ADDITIONS• View/web.config

• Web.config and web.release.config

Page 7: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

INTERMISSION: PAPERCUT

http://papercut.codeplex.com

Page 8: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

CODE TEMPLATES• Allows you to customize the OTB Views and Controllers

• No more unnecessary comments

• No more Resharper squigglies

C:\Program Files (x86)\Microsoft Visual Studio 12.0\ Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates

Page 9: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

DATA ANNOTATIONS• Uses for validation (Required, Range, String Length)

• Specify field types (Phone, Email)

• DisplayFor and ValidationFor text

Page 10: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

EDITORFOR TEMPLATES• Must be in Views > Shared > EditorTemplates

• Can be customized for each DataType

Page 11: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

STRONGLY TYPED BUNDLES• Takes away the guesswork

• Easier to make changes to the bundle’s route

Page 12: Jonathan Peterson Paladin Cloudware FILE -> NEW PROJECT E: jonathan@paladincloudware.comjonathan@paladincloudware.com G+: +JonathanPeterson42 GitHub &

LINKS• Github: http://goo.gl/UhMAFd

• Code Templates:–C:\Program Files (x86)\Microsoft Visual Studio 12.0\ Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates

• Less: http://lesscss.org/

• Papercut (SMTP Server): http://papercut.codeplex.com