Платформа 2010 ASP.NET 4.0, MVC Framework 2.0 и Visual Studio 2010 Microsoft Гайдар Магдануров.

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



Advertisements
Похожие презентации
Развитие веб-платформы для разработчика: ASP.NET MVC 2.0 и ASP.NET Web Forms 4.0 Гайдар Магдануров t:
Advertisements

Платформа разработки ASP.NET Гайдар Магдануров t: e: m: +7.
Генерация разметки в ASP.NET 4.0 Андрей Веселов. Мета-теги Demo page Новые свойства класса Page: MetaKeywords и MetaDescription. public partial class.
Top 10 возможностей ASP.NET 2.0. Выбор сделан на основе опросов разработчиков Top 10 – горячая десятка возможностей.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – Кэширование вывода страниц Из цикла лекций «Технологии.
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 2 Страницы и элементы управления Гайдар Магдануров
Разработка web- приложений и ASP.NET. Web-приложения и web- серверы Web-приложение это набор взаимосвязанных файлов (*.htm, *.asp, *,aspx, файлов изображений.
Тренинг «Разработка веб-приложений на ASP.NET» Занятие 1 Знакомство с ASP.NET Гайдар Магдануров
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – введение Из цикла лекций «Технологии разработки Internet-приложений»
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – обработка ошибок страниц и приложения, Global.aspx.
Платформа J2EE Сервис: Java Naming Directory (JNDI) – универсальный сервис хранения объектов в иерархической структуре имен (аналогично файловой системе)
Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework» Занятие 6 Мобильное представление и локализация Гайдар Магдануров
Веб-технологии и современные средства разработки УЦ ВГТУ & SoftLine Academy.
Новые возможности технологий Microsoft для разработки веб-решений Гайдар Магдануров t: e:
Платформа хостинга Windows Server 2008 R2 Internet Information Services 7.5 Гайдар Магдануров t: e:
Использование Dynamic Data на практике Гайдар Магдануров t: twitter.com/gaidar p: +7 (905) e:
Язык программирования C# Дмитрий Сошников
Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework» Занятие 3 Маршрутизация и контроллеры Гайдар Магдануров
Куратор: Ямпольская Л.И., директор УЦ ТПУ&Softline, тел.раб.(3822) Томск Национальный исследовательский Томский политехнический.
Проф. В.К.Толстых, Технологии разработки Internet- приложений Delphi for.NET примеры: работа с файлами Из цикла лекций «Технологии разработки.
Транксрипт:

Платформа 2010 ASP.NET 4.0, MVC Framework 2.0 и Visual Studio 2010 Microsoft Гайдар Магдануров

Платформа 2010Поговорим... Новые возможности ASP.NET 4.0 Изменения в WebForms MVC 2.0 Улучшениях Visual Web Developer 2010 Дизайнер страниц JavaScript Распространение веб-приложений и Visual Studio 2010

Платформа 2010 Основные службы ASP.NET

Платформа 2010 Автоматический запуск приложений Для приложений, требующих сложной инициализации Работает на IIS 7.5 Конфигурация в applicationHost.config

Платформа 2010 Автоматический запуск приложений

Платформа 2010 Автоматический запуск Собственный тип для инициализации приложения До отработки метода Preload приложение не принимает запросы public class CustomInitialization : System.Web.Hosting.IProcessHostPreloadClient { public void Preload(string[] parameters) { } }

Платформа 2010 Расширенный механизм кеширования Возможность добавления собственных провайдеров кеширования Наследование System.Web.Caching.OutputCacheProvider Конфигурирование в web.config Возможность выбора системы хранения Локальные или сетевые диски, база данных «в облаке», системы распределенного кеша

Платформа 2010 Кеширование: настройка Конфигурирование в web.config

Платформа 2010 Кеширование: настройка По умолчанию AspNetInternalProvider Хранение данных в памяти Возможность назначать провайдеры на уровне страницы и на уровне запроса

Платформа 2010 Кеширование: для страницы

Платформа 2010 Кеширование: для запроса В Global.asax public override string GetOutputCacheProviderName(HttpContext context) { if (context.Request.Path.EndsWith("Advanced.aspx")) return "DiskCache"; else return base.GetOutputCacheProviderName(context); }

Платформа 2010 Уменьшение размера состояния сеанса пользователя Использование System.IO.Compression.GZipStream для сжатия состояния Особенно актуально для веб-ферм, при хранении состояния в SQL Server или out-of-proc сервере состояния

Платформа 2010 Постоянные редиректы Метод Response.Redirect выдает 302 Moved Temporary – соответственно лишний обмен по HTTP сообщениями PermanentRedirect выдает 301 – Moved Permanently RedirectPermanent("/new/content.aspx"); Поисковые системы кешируют страницы с кодом 301 и не запрашивают повторно

Платформа 2010 Настройки поддерживаемых URL Возможность увеличения длины путей более 260 символов: Контроль допустимых символов в URL,*,%,&,:,\" />

Платформа 2010 Валидация запросов Создание собственного валидатора запросов регистрация в web.config секции httpRuntime Наследование System.Web.Util.RequestValidator Метод IsValidRequestString public class CustomRequestValidation : RequestValidator { protected override bool IsValidRequestString( HttpContext context, string value, RequestValidationSource requestValidationSource, string collectionKey, out int validationFailureIndex) {...} }

Платформа 2010 Настройки кодирования URL и HTML Создание собственных классов для обработки вызовов при сохранении API Наследование System.Web.Util.HttpEncoder Автоматическая подмена вызовов методов кодирования классов System.Web.HttpUtility и System.Web.HttpServerUtility Настойка в web.config

Платформа 2010 Настройка в файле aspnet.config в директории, куда установлен.NET FW Новые счетчики в категории ASP.NET Applications - % Managed Processor Time и Managed Memory Used Мониторинг производительности на уровне приложения

Платформа 2010 Меньше настроек в web.config Основные параметры конфигурации перенесены в machine.config Минимальный достаточный web.config

Платформа 2010WebForms

Платформа 2010Маршрутизация Cвойства для работы с маршрутами HttpRequest.RequestContext и Page.RouteData Определение маршрута public class Global : System.Web.HttpApplication { void Application_Start(object sender, EventArgs e) { RouteTable.Routes.MapPageRoute("SearchRoute", "search/{searchterm}", "~/search.aspx"); RouteTable.Routes.MapPageRoute("UserRoute", "users/{username}", "~/users.aspx"); } }

Платформа 2010Маршрутизация Параметр checkPhysicalUrlAccess метода MapPageRoute позволяет применить правила доступа, которые определены для физической страницы в web.config Чтение в коде Page.RouteData.Values[id"]

Платформа 2010Миршрутизация Декларативное связывание Чтение значений параметров " /> Определение параметров "> Search

Платформа 2010Маршрутизация Связь с DataSource

Платформа 2010 Настройки ViewState Наследование ViewState с возможностью наследования Атрибут ViewStateMode Enabled (по умолчанию) Disabled Inherit

Платформа 2010 Поддержка браузеров Класс HttpBrowserCapabilities для получения информации о текущем браузере blackberry.browser chrome.browser Default.browser firefox.browser gateway.browser generic.browser ie.browser iemobile.browser iphone.browser opera.browser safari.browser

Платформа 2010 Мета-теги страницы Свойства Keywords и Descriptions Свойства Page.MetaKeywords и Page.MetaDescription

Платформа 2010 Управление ID контролов в разметке ClientIDMode AutoID – автоматическая генерация Static – статические ID Predictable – Предсказуемые (например, для Repeater, ClientIDRowSuffix будет PrimaryKey или Object ID) Inherit – наследовать от родителя

Платформа 2010 Управление ID контролов в разметке Страница Web.config

Платформа 2010 Управление ID контролов в разметке

Платформа 2010 ID для элементов коллекций rootPanel_ListView1_ProductNameLabel_1 В Repeater нет RowClientIDRowSuffix, поэтому используется индекс строки

Платформа 2010 Новое выражение Новое выражение Автоматическое кодирование вывода на страницу Равно Если не нужно кодировать, то HTML that is not encoded ") %>

Платформа 2010Рендеринг Выбор уровня совместимости HTML Для «скрытых» div генерируется css class aspNetHidden Возможность отключить внешнюю таблицу для контролов FormView, Login, PasswordRecovery, ChangePassword, Wizard, CreateUserWizard

Платформа 2010 Улучшения контролов ListView Не нужен LayoutTemplate CheckBoxList Новые типы Layout = UnorderedList, OrderedList Menu Рендеринг в виде несортированного списка

Платформа 2010 Выделение строки в ListView/GridView Раньше выделение было по индексу строки Теперь – по ключу данных

Платформа 2010 MVC 2.0

Платформа 2010 Регионы / Area Вложенные проекты Site Blog Forum Shop

Платформа 2010 Валидация и аннотации данных public class PersonController { [HttpPost] public ActionResult Update(Person p){ if(!ModelState.IsValid)... } public class Person { [Required(ErrorMessage = *)] [StringLength(32, ErrorMessage = Not longer than 32)] public string LastName { get; set; } }

Платформа 2010 Строгая типизация UI хэлперов Html.LabelFor (c => c.Name) Html.EditorFor (c => c.Name) Html.EditorFor (c => c)

Платформа 2010 Поддержка шаблонов UI EditorTemplates Display Templates.ascx файлы Html.EditorFor(c => c.Name, NameEditor) public class Person{ [UIHint(NameEditor)] public string Name {get; set;} }

Платформа 2010 Параметры по умолчанию public ActionResult ([DefaultValue(10)] int count) {} public ActionResult (int count = 10) {} // C# 4.0

Платформа 2010 Visual Studio 2010

Платформа 2010 Улучшения дизайнера Полная поддержка CSS 2.1 при рендеринге в дизайнере Шаблоны HTML и JavaScript Улучшения JavaScript IntelliSense Распознавание объектов, создаваемых автоматически Поддержка библиотек третьих компаний Моментальное распознавание комментариев

Платформа 2010 Поддержка CSS 2.1 Селекторы атрибутов h1[title] span[class=example] span[hello="Cleveland"][goodbye="Colum bus"] a[rel~="copyright"] *[lang|="en"] "lang" псевдо-класс html:lang(fr-ca) html:lang(de) :lang(fr) > Q :lang(de) > Q

Платформа 2010 ":first-child" псевдо класс div > p:first-child p:first-child em «наследование».container { color: inherit } #menu { font-family: inherit } border-color: transparent Корректная реализация некорректных селекторов body,,p Поддержка CSS 2.1

Платформа

Платформа 2010 JavaScript IntelliSense

Платформа 2010 Структура документа

Платформа 2010Распространение Публикация: FTP FPSE Директория MS Deploy Профили для публикации в «один клик»

Платформа 2010 Использование MS Deploy Пакет, включающий IIS Configuration GAC или COM Components Сертификаты Реестр Базы данных (скрипты для БД и, по желанию, данных) Модификацию web.config (xml трансформация) Флагов отладки Строк соединения Ссылок на веб-службы

Платформа 2010 Публикация - FTP

Платформа 2010Заключение Эволюционное развитие ASP.NET WebForms параллельно с MVC Полная поддержка в Visual Studio

Платформа 2010Ресурсы Официальный сайт ASP.NET Официальный сайт Visual Studio Блог команды Visual Web Developer

Платформа 2010Вопросы Гайдар Магдануров Эксперт по веб-технологиям Вы сможете задать вопросы докладчику в зоне «Спроси эксперта» в течение часа после завершения этого доклада