3. High quality technical screencasts created by
experts on the latest and most important
technologies. Buy access to a single series or
subscribe for as little as $19 a month.
tekpub.com
ASP
.NET MVC
Ayende Rahien
Rob Conery
jQuery
Dave Ward
Ruby on Rails
ASP
.NET Ajax
LINQ
nHibernate
4. Agenda
• Überblick über ASP.NET MVC 2
• Vorteile / Nachteile
• Demo Applikation
• Nützliche Links / Bücher
• Fragen und Diskussion
13. ASP.NET MVC – Request Ablauf
Response
Response
Controller
View
14. ASP.NET MVC – Was ist anders?
• Klare Trennung der Verantwortlichkeiten
(Seperation of Concerns SoC)
– Gut geeignet für grosse und komplexe
Applikationen
• Besser geeignet für TDD
• Volle Kontrolle über den Output
15. ASP.NET MVC – Was ist anders?
• Sprechende URLs
/Kunde/42/Bestellung/37
/Produkte/Velos
• Konvention statt Konfiguration
Vorgegebene Projektstruktur und Namen
• Kein Viewstate, kein PostBack
16. ASP.NET MVC – Was ist anders?
• MVC Framework ist einfach erweiterbar
– Komponenten können ausgetauscht werden
– Echte MS Open Source!
• Viele Frameworks lassen sich einfach
integrieren
– Alternative View Engines
– Dependency Injection
– Validierungs Frameworks
– Test und Mock Frameworks
17. ASP.NET MVC - Vorteile
• Volle Kontrolle über Markup
• Kein ViewState – näher an der „Realität“
• Besser geeignet für TDD als WebForms
• Eingebauter „Code Generator“ (T4)
18. ASP.NET MVC - Nachteile
• Gute (X)HTML / CSS Kenntnisse notwendig
• WebForms besser für RAD geeignet
• Noch wenige 3rd Party controls
27. View
• Ein View kann sich aus mehreren
PartialViews (=UserControls)
zusammensetzen
• HTML kann erzeugt werden durch
– Eigenes Markup
– HTML Helper
– Templated HTML Helpers
28. (Best) Practices
• Dependency Injection für Repositories
verwenden
• Repository Pattern
• Model -> ViewModel verwenden
• Entweder jQuery oder MS Ajax verwenden
• Resharper einsetzen