ASP.NET MVC 3

25
ASP.NET MVC 3 Денис Резник Руководитель департамента веб-разработки Digital Cloud Technologies

description

 

Transcript of ASP.NET MVC 3

Page 1: ASP.NET MVC 3

ASP.NET MVC 3

Денис РезникРуководитель департамента веб-разработкиDigital Cloud Technologies

Page 2: ASP.NET MVC 3

Model-View-Controller

Model

ControllerView

Page 3: ASP.NET MVC 3

Создание веб-приложений с использованием шаблона «Model-View-Controller»

Чёткое разделение обязанностей между компонентамиУменьшение связности между компонентамиУпрощение unit-тестировния

Полный контроль над разметкойМеханизм роутингаПоддержка существующей инфраструктуры ASP.NET

ASP.NET MVC 1.0

Page 4: ASP.NET MVC 3

Валидация при помощи DataAnnotationsУлучшена производительностьСтрого типизированные помощникиПредставление для удаления данныхЭкранирование строк при рендерингеФункционал Areas...

ASP.NET MVC 2.0

Page 5: ASP.NET MVC 3

Что дальше?

MVC 3 Preview 1

Page 6: ASP.NET MVC 3

Razor

MVC 3 Preview 1

Page 7: ASP.NET MVC 3

Razor

Новый движок представлений

Page 11: ASP.NET MVC 3

Layout Pages

Page 14: ASP.NET MVC 3

Передача строковых шаблонов, как параметров

Page 15: ASP.NET MVC 3

Другие изменения

MVC 3 Preview 1

Page 16: ASP.NET MVC 3

Динамическое свойство ViewModel

old

new

Page 18: ASP.NET MVC 3

Поддержка новых (.Net 4.0) атрибутов DataAnnotations (например DisplayAttribute)Улучшение ValidationAttribute Поддержка нового интерфейса IValidatableObject

Улучшения валидации

Page 19: ASP.NET MVC 3

HttpNotFound

Возвращает 404 not found

RedirectToActionPermanent()RedirectToRoutePermanent()RedirectPermanent()

Возвращает 301 redirect permanently

RedirectToActionPermanent

HttpStatusCodeResult

Page 20: ASP.NET MVC 3

Встроенный JSON bindingПозволяет Action методам принимать json и преобразовывать данные json к объекту, который задан в параметре Action метода.

Page 21: ASP.NET MVC 3

ASP.NET MVC 3 P1 поддерживает DIControllers (registering & injecting controller factories, injecting controllers)Views (registering & injecting view engines, injecting dependencies into view pages)Action Filters (locating & injecting filters

Планируется поддержка DIModel Binders (registering & injecting)Value Providers (registering & injecting) Validation Providers (registering & injecting)Model metadata Providers (registering & injecting)

Dependency Injection

Page 22: ASP.NET MVC 3

Dependency Injection, Service Locator

Page 23: ASP.NET MVC 3

Dependency Injection, Service LocatorAsp.net mvc 3 поддерживает Common Service locator library и любой DI контейнер, который реализует интерфейс из CLS library:Castle Windsor Adapter Spring .NET Adapter Unity Adapter StructureMap Adapter Autofac Adapter MEF Adapter .net 4.0 LinFu Adapter

Page 25: ASP.NET MVC 3

Вопросы

?Denis ReznikHead of Web Development department at DCTTrainer at Microsoft Innovation CenterMicrosoft MVP (SQL Server)Microsoft Certified [email protected]://twitter.com/DenisReznikhttp://dev.net.ua/blogs/denisreznik/MCPD - Web Developer 4MCITP – Database Developer 2008MCTS - .NET Framework 4, Web ApplicationsMCTS - SQL Server 2008, Database DevelopmentMCTS - .NET Framework 4, Data Access with ADO.NETMCTS - SQL Server 2008, Implementation and Maintenance