Использование Dynamic Data на практике Гайдар Магдануров t: twitter.com/gaidar p: +7 (905) 5045716 e: gaidarma@Microsoft.com.

Презентация:



Advertisements
Похожие презентации
Веб-платформа Microsoft Гайдар Магдануров t: e: m: +7 (905)
Advertisements

Платформа разработки ASP.NET Гайдар Магдануров t: e: m: +7.
ADO.NET Data Services Данила Корнев Developer Evangelist Microsoft Россия Установите Silverlight 1.0 для просмотра демонстрации:
Тренинг ASP.NET MVC 3 Гайдар Магдануров Microsoft.
NHibernate что, где, когда Артур Дробинский ЗетаСофт Томск, 2012.
Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework» Занятие 5 Погружение в MVC Framework Гайдар Магдануров
Новые возможности технологий Microsoft для разработки веб-решений Гайдар Магдануров t: e:
Язык программирования C# Дмитрий Сошников
Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework» Занятие 3 Маршрутизация и контроллеры Гайдар Магдануров
Гайдар Магдануров Microsoft p: +7 (905) e: t: twitter.com/gaidartwitter.com/gaidar Возможности Internet.
PHP на Windows Гайдар Магдануров twitter.com/gaidar
Михаил Черномордиков Developer Evangelist, Microsoft Россия
Развитие веб-платформы для разработчика: ASP.NET MVC 2.0 и ASP.NET Web Forms 4.0 Гайдар Магдануров t:
Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework» Занятие 1 Знакомство с подходом MVC Гайдар Магдануров
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 5 Работа с данными Гайдар Магдануров
Статический анализ кода (на примере DDD-фреймворка) Алексеев Алексей Николай Гребнев
Гайдар Магдануров Microsoft.
Разработка web- приложений и ASP.NET. Web-приложения и web- серверы Web-приложение это набор взаимосвязанных файлов (*.htm, *.asp, *,aspx, файлов изображений.
Гайдар Магдануров Microsoft.
Александр Яковенко CLR (Common Language Runtime) – избавляет от зависимости от аппаратной части C# - объектно-ориентированный язык.
Транксрипт:

Использование Dynamic Data на практике Гайдар Магдануров t: twitter.com/gaidar p: +7 (905) e:

Сегодня в докладе… Поговорим… Что такое Dynamic Data? Посмотрим... Как оно выглядит? Подумаем... Подходит ли нам?

Что такое Dynamic Data? Оснастка для работы с данными Гибкая кастомизация Валидация данных Доступно в.NET FW 3.5 SP1 / 4.0

Архитектура Dynamic Data Источник данныхМодель данныхМета-данные

Три шага к Dynamic Data Определить модель данных Зарегистрировать модель Кастомизировать шаблоны

Возможности кастомизации Шаблоны страниц (PageTemplates)Шаблоны полей (FieldTemplates)Типы данных (UIHint)СтраницыDynamicField/DynamicControl

Посмотрим

Маршрутизация routes.Add( new DynamicDataRoute("{table}/{action}.aspx") { Constraints= new RouteValueDictionary( new { action= "List|Details|Edit|Insert" }), Model= model }); routes.Add(new DynamicDataRoute("{table}/ListDetails.aspx") { Action= PageAction.List,ViewName= "ListDetails", Model= model}); routes.Add(new DynamicDataRoute("{table}/ListDetails.aspx"){ Action= PageAction.Details, ViewName= "ListDetails",Model= model});

Контролы и страницы

Применение мета-данных using System; using System.ComponentModel.DataAnnotations; [MetadataType(typeof(EmployeeMetadata))] public partial class Employee { } public class EmployeeMetadata { [UIHint("DateTimeCalendar")] public objectHireDate{ get; set; } }

Валидация public class CustomerMetadata{ [Required()] public object Title; } public partial class Customer { partial void OnTitleChanging(string value) { if(!Char.IsUpper(value[0])) {throw new ValidationException(!!!"); } }

Валидация public partial class Employee{ partial void OnValidate(System.Data.Linq.ChangeAction action){ if(action== System.Data.Linq.ChangeAction.Insert)) { if(this._BirthDate.Value.CompateTo(DateTime.Now)>0) throw new ValidationException(!!!); }

Возможности Независимость от слоя данных –LINQ2SQL, Entity Framework,ADO.NET Data Services Правила валидации –Атрибуты полей на уровне модели Ограничение доступа –На уровне web.confg / на уровне страницы

Пример из жизни

Оно нам надо? Сценарий СправочникиДА Простой интерфейс редактированияДА Частые простые изменения схемыДА «Описательные данные»ДА Сложный интерфейс редактированияНЕТ Данные со сложными логическими связямиНЕТ

Где узнать больше? Официальные сайты Блоги Пишите мне