Рассмотрены основные принципы и возможности технологии ASP.NET MVC Framework и показаны способы ее практического использования при разработке веб-приложений. Описаны преимущества подхода разработки MVC и рассмотрена структура MVC-приложения. Приведено сравнение технологии WebForms и MVC Framework и рассмотрены вопросы их совмещения. Описаны модель и доступ к данным (технологии LINQ, Entity Framework и др.), контроллеры, представление и интерфейс приложения, механизмы маршрутизации и Ajax-функциональность. Уделено внимание вопросам тестирования веб-приложений. Рассмотрены особенности применения ASP.NET MVC 2 в Visual Studio 2010.
Название: ASP.NET MVC Framework Автор: Магдануров Г. И., Юнев В. А. Издательство: БХВ-Петербург Год: 2010 Страниц: 320 Формат: DJVU Размер: 16,2 МБ ISBN: 978-5-9775-0462-1 Качество: Отличное Серия или Выпуск: Профессиональное программирование
Содержание:
Глава 1. Знакомство с MVC Framework Паттерн проектирования MVC История паттерна проектирования MVC Преимущества подхода разработки MVC 1. Полный контроль над кодом разметки 2. Расширяемость 3. Простота автоматического тестирования Установка MVC Framework Первое приложение на MVC Framework Структура MVC-приложения Папка Content Папка Controllers Папка Models Папка Scripts Папка Views Файл Default.aspx Файл Global. asax Файл Web.config Обработка запросов MVC-приложением Компоненты MVC-приложения Таблица маршрутизации Контроллер Представление Подход к разработке MVC-приложений Заключение Глава 2. MVC Framework н WebForms Сравнение WebForms и MVC Framework Технология WebForms Преимущества WebForms Недостатки WebForms Технология MVC Framework Преимущества MVC Framework Недостатки MVC Framework Выбор подхода к разработке веб-приложения Реализация подхода MVC в WebForms Совмещение WebForms и MVC Framework в рамках одного веб-приложения Использование элементов управления WebForms в MVC-приложениях Внедрение страниц WebForms в MVC-приложения Использование MVC Framework в существующих решениях WebForms Заключение Глава 3. Модель и доступ к данным Технология LINQ LINQ для SQL Entity Framework Принципы построения слоя доступа к данным Возможность замены источника данных Реализация слоя данных Пример использования слоя данных Механизмы для работы с данными XML-данные Работа с данными через ADO.NET LINQ для SQL Entity Framework NHibernate Сравнение механизмов доступа к данным Рекомендации по выбору механизма доступа к данным Глава 4. Контроллеры Назначение контроллеров Обзор контроллеров в ASP.NET MVC Простой пример реализации контроллера Архитектура контроллеров Порядок вызова архитектурных механизмов Фабрика контроллеров Действия, фильтры и атрибуты Переопределение свойства Actionlnvoker Атрибуты ActionMethodSelectorAttribute Атрибуты, производные от Filter Attribute Атрибуты ActionFilterAttribute и OutputCacheAttribute Стандартные реализации класса ActionResult Создание своей реализации ActionResult Model Binding Советы по использованию контроллеров Атрибуты ActionNameSelectorAttribute wAciionNameAttribute Наследование контроллеров Асинхронное выполнение при работе с контроллерами Паттерн IAsyncResult Паттерн Event Паттерн Delegate Дополнительные сведения об асинхронных контроллерах Неизвестные действия и метод HandleUnknownAction Глава 5. Представление и интерфейс приложения Стандартный механизм представлений на базе WebForms Code-behind-файлы Мастерские страницы и элементы управления Файлы представлений в структуре проекта Данные для отображения и ViewData Строгая типизация данных представления Поиск элементов в коллекции ViewData Генерация разметки представлением Вложенный управляющий код < %- значение %> < %управляющая конструкция %> Вспомогательные методы Кодирование текста и атрибутов Гиперссылки на действия контроллеров Элементы управления HTML-страницы Создание собственного вспомогательного метода Конкатенация строк Использование ресурсов Использование дополнительных слоев абстракции Использование серверных элементов управления WebForms Частичные представления Создание гаджетов Заключение Глава 6. Механизмы маршрутизации Маршрутизация в ASP.NET Механизмы маршрутизации Маршрут и класс Route Коллекция маршрутов и класс RouteCollection Таблица маршрутизации и класс RouteTable Ограничения и интерфейс IRouteConstraint Обработчик маршрутов и интерфейс IRouteHandler Создание маршрутов Наименование маршрута RedirectToRoute AjaxHelper UrlHelper Шаблон маршрута и свойство Url Значения параметров маршрута по умолчанию и свойство Defaults Ограничения параметров маршрута и свойство Constraints Параметры маршрута и свойство DataTokens Игнорирование маршрутов Советы по использованию маршрутов Маршруты и валидация запросов Хранение маршрутов в базе данных Маршрутизация и тестирование Подготовка инструментов Создание тестов Утилита ASP.NET Routing Debugger Заключение Глава 7. Ajax-функциональность История успеха Ajax Современный Ajax Пример использования Ajax MVC Framework и Ajax Ajax-функционал в MVC Framework AjaxOptions Ajax. BeginForm Ajax. ActionLink: IsAjaxRequest jQuery Библиотека jQuery jQueryAPI Функции для работы с Ajax События Ajax в jQuery Применение Ajax и jQuery в MVC Framework Пример 1. Проверка логина при регистрации Реализация на ASP.NET Ajax Реализация на jQuery Пример 2. Логин через Ajax Реализация на ASP.NET Ajax Реализация на jQuery Полезные советы Вопросы безопасности Обработка пользовательских данных Управление данными и cookie Расширения jQuery Выбор между ASP.NET Ajax и jQuery Заключение Глава 8. Тестирование веб-приложений Установка и настройка NUnit Создание и выполнение тестов Несколько слов о важности тестирования Тесты и MVC Framework Заключение Глава 9. ASP.NET MVC 2 и Visual Studio 2010 Области Области для нескольких проектов Области в одном проекте Шаблонные помощники Шаблоны по умолчанию Создание шаблонов Аннотация данных и валидация Классы метаданных Новые атрибуты Http***Attribute и перегрузка типов запросов DefaultVdue Attribute RequireHttpsAttribute Улучшения в связывании данных Прочие улучшения в API Нововведения Visual Studio 2010 Мультитаргетинг в Visual Studio 2010 Поддержка нескольких мониторов Сниппеты JavaScript, Html, ASP.NET в Visual Studio 2010 Что дальше? Заключение ПРИЛОЖЕНИЯ Приложение 1. Настройка среды для хостинга решений на MVC Framework Настройка маршрутизации Приложение 2. Оптимизаций производительности Кэширование данных Сжатие данных Уменьшение размера передаваемых файлов Уменьшение JavaScript Уменьшение CSS Уменьшение изображений Другие способы клиентской оптимизации Уменьшение количества запросов Отказ от перенаправлений Использование CSS Sprites Размер cookie Заключение Приложение 3. Ресурсы по MVC Framework Предметный указатель