asp.net mvc best practices

Post on 19-May-2015

2.399 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Hattan Shobokshi

ASP.NET MVC Best Practices

*Housekeeping

*Stuttering is a communication disorder involving disruptions, or “disfluencies,” in a person’s speech.

*Across all cultures, roughly 1% of people currently has a stuttering disorder.

*http://westutter.org/

Who am I?

Hattan ShobokshiSenior Software Engineer

www.hattanshobokshi.comhattan@gmail.com

http://speakerrate.com/hattanhttp://www.slideshare.net/

shobokshi

Goals for this talk

* Look at Examples of BAD CODE

* PRG Pattern

* Load JavaScript files from CDN

* Do not Include view formatting in the controller

* T4 Templates

* Custom View & Controller Templates

* Diagnostic Tools

* Telerik Grid Control

PRG Pattern

*HTTP POST

*Redirect

*HTTP GET

*The prg pattern is used to ensure that the intended modification of data only happens once.

Microsoft Ajax Content Delivery

Network

*Content Delivery Network

* Improve Application Performance

*Reuse Javascript files Cached by different domains

*Available Content Files:

* jQuery

* jQuery Validation

* jQuery UI

*Ajax Control Toolkit

*ASP.NET Ajax

*ASP.NET MVC JavaScript Files

*http://www.asp.net/ajaxlibrary/cdn.ashx

<script src='http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.4.min.js' type='text/javascript'></script>

*T4 : Text Template Transformation Toolkit

* Code Generation Tool

* Built into Visual Studio (2008 and 2010)

* .tt File Extension

* No syntax highlighting by default

* Clarius Visual T4 Add-on http://www.visualt4.com/

* Tip: Windows 7/Vista unblock zip file, unblock individual files

* More informationhttp://www.olegsych.com/2007/12/text-template-transformation-toolkit/

T4MVC

*<%= Html.ActionLink(“New Dinner", “Create", "Dinners")%>

*<%= Html.ActionLink(" New Dinner", MVC.Dinners.Create())%>

*<img src="/Content/nerd.jpg" />

*<img src="<%= Links.Content.nerd_jpg %>" />

http://mvccontrib.codeplex.com/wikipage?title=T4MVC_doc

T4 Code Templates

*Custom Tooling

*Customize Default View Templates

*Add new View Templates

*Customize Controller Template

*T4 Templates

*~\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC 2

*~\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\VisualBasic\Web\MVC 2

Route Debugger

*Add Reference to Dll

*Enable route debugging with 1 line of code

RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);

*http://haacked.com/archive/2008/03/13/url-routing-debugger.aspx

MVC Diagnostics

*Environment Information

*MVC Assembly Version

*Referenced Assembly Information

*Web Forms page, not an mvc page

*http://bradwilson.typepad.com/blog/2010/03/diagnosing-aspnet-mvc-problems.html

*Telerik Grid Control

*http://demos.telerik.com/aspnet-mvc/

* Grid Control

*Out of the box support for Sorting, Filtering

*Out of the box paging support

*Out of the box ajax support

*Very little javascript you have to write!

What did we just talk about?

* Look at Examples of BAD CODE

* PRG Pattern

* Load JavaScript files from CDN

* Do not Include view formatting in the controller

* T4 Templates

* Custom View & Controller Templates

* Diagnostic Tools

* Telerik Grid Control

Contact Information

*Email: hattan@gmail.com

*www.hattanshobokshi.com

The End

Thank you!

top related