Чтение онлайн

на главную - закладки

Жанры

Шрифт:

? методы расширения Html.RenderAction и Html.Action, которые ранее являлись частью библиотеки MVC Futures, станут частью MVC 2. Эти методы предназначены для формирования разметки на основе результата действия и внедрении ее в определенное представление. Таким образом, в представлении можно будет выводить результат действий из других контроллеров;

? будет расширен набор строготипизированных вспомогательных методов расширения для работы с шаблонами, добавятся методы: ValidationMessageFor, TextAreaFor, TextBoxFor, HiddenFor, DropDownListFor;

? изменится поведение TempDataDictionary. Ее значения будут удаляться не после второго запроса, а сразу после чтения, что означает, что если данные TempData были прочтены в контексте этого же запроса, то они не будут доступны в следующем, как это могло бы быть в первой версии MVC. Данные в TempData будут сохранены даже после второго запроса, если их не прочитали. Для сохранения данных и после чтения будет предоставлен метод Keep, который позволит продлить жизнь данных в TempData;

? асинхронные контроллеры, представленные в библиотеке MVC Futures, будут включены в финальный вариант ASP.NET MVC 2;

? появится возможность создавать и использовать несколько провайдеров валидации, серверной и клиентской;

? появится возможность перегружать создание TempDataProvider с помощью нового метода CreateTempDataProvider в классе Controller.

Заключение

ASP.NET MVC развивается значительными темпами, что показал период времени, за который была написана эта книга. За это время вышло несколько версий ASP.NET MVC 2, каждая из которых привнесла новый богатый функционал и изменила к лучшему старый.

ASP.NET MVC— это молодой, но мощный Framework, и если его развитие продолжится теми же темпами, которыми он развивается сейчас, то вскоре ASP.NET MVC станет мощнейшим инструментом разработки веб-сайтов, включающим в себя как средства для создания чистого быстрого кода для небольших проектов, так и средства, востребованные в корпоративной среде. Кроме того, поддержка Ajax, асинхронного выполнения, областей и улучшенная безопасность — это то, чего стоит ждать в финальной версии MVC 2 — следующей версии Framework.

Остается только пожелать инструменту ASP.NET MVC и дальше получать новые средства, новые инструменты и функционал, который будет востребован специалистами веб-разработки самого широкого профиля. Пусть ASP.NET MVC обретает все большую заслуженную популярность.

ПРИЛОЖЕНИЯ

ПРИЛОЖЕНИЕ 1

Настройка среды для хостинга решений на MVC Framework

Задача хостинга приложений, написанных с помощью ASP.NET MVC, решается так же просто, как и задача хостинга обычных ASP.NET-приложений. На сегодняшний момент все компании, предоставляющие услуги хостинга, заявляют о поддержке ASP.NET MVC. На практике же поддержка ASP.NET MVC — это всего лишь маркетинговый ход, который позволяет добавить еще одну строчку в рекламный проспект. Так как сайты ASP.NET MVC могут работать везде, где работают обычные ASP.NET-сайты, никакой особой поддержки для ASP.NET MVC не требуется.

Однако, несмотря на потенциальную возможность запуска проектов ASP.NET MVC на любом ASP.NET-хостинге, вы можете столкнуться с рядом различных вариантов окружения и версий серверов IIS, которые потребуют разных решений и некоторых дополнительных действий. Рассмотрим самые важные из них.

Настройка маршрутизации

Для правильного функционирования механизма маршрутизации в ASP.NET MVC необходима корректная обработка сервером IIS расширений mvc, пути с которыми используются внутри MVC Framework. Эта проблема, если она возникла, довольно просто решается в случаях, когда вы имеете дело с хостингом на базе IIS7 (сегодня это наиболее распространенный вариант). Для решения проблемы вам необходимо с помощью административной панели инструментов, которую предлагает ваша хостинговая компания, установить режим работы приложения в IIS7 Integrated Mode вместо установленного по умолчанию режима IIS7 Classic Mode. Варианты доступа к этой опции могут отличаться в зависимости от хостера.

Если же вы имеете доступ к серверу IIS, то изменение режима работы IIS7 для вашего приложения выполняется через инструмент Internet Information Services Manager. В IIS Manager вам достаточно задать верный пул приложений для своего приложения, который бы работал в режиме IIS7 Integrated Mode, по умолчанию это Default Application Pool или DefaultAppPool (рис. П1.1).

Проблема маршрутизации особенно актуальна для хостинга ASP.NET MVC-приложений на IIS6, в котором необходимо проделать дополнительные действия.

Если вы имеете доступ к IIS-серверу и можете его конфигурировать (в случаях, когда вы производите самостоятельный хостинг или хостинг на виртуальных серверах), вам необходимо самостоятельно зарегистрировать для IIS6 обработку расширения mvc. Это можно проделать двумя способами.

? Вы можете использовать скрипт register.wsf, который поставляется с ASP.NET MVC и расположен по адресу C:\Program Files\Microsoft ASP.NET\ASP.NET MVC\Scripts или C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC\Scripts для 64-битных операционных систем. Скрипт register.wsf автоматически зарегистрирует обработку расширения mvc для IIS6.

? Вместо использования скрипта вы можете проделать необходимые для регистрации действия собственноручно. Для этого необходимо пройти в свойства проекта, выбрать вкладку Virtual Directory и в ней нажать кнопку Configuration. В окне конфигурации приложения будет показан список привязок расширений к ISAPI-обработчикам. Добавьте новое расширение mvc и привяжите его к обработчику c:\WINDOWS\Microsoft.NET \Framework\v2.0.50727\aspnet_isapi.dll. Путь к обработчику ISAPI может отличаться, но вы можете определить верный, найдя сопоставленный путь для расширения aspx. После добавления обработчика вы увидите его в списке сопоставлений (рис. П1.2).

Рис. П1.2. Список сопоставлений расширений и ISAPI-обработчиков

? После сопоставления расширения mvc для вашего приложения необходимо видоизменить создание маршрутов в Global.asax так, как показано в листинге П1.1.

Листинг П1.1. Модифицированный код Global.asax

using System;

using System.Collections.Generic;

using System.Linq; using System.Web;

using System.Web.Mvc;

Поделиться:
Популярные книги

Воин-Врач

Дмитриев Олег
1. Воин-Врач
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
6.00
рейтинг книги
Воин-Врач

Имя нам Легион. Том 9

Дорничев Дмитрий
9. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 9

Холод смерти

Макдональд Росс
11. Лью Арчер
Детективы:
крутой детектив
5.00
рейтинг книги
Холод смерти

По осколкам твоего сердца

Джейн Анна
2. Хулиган и новенькая
Любовные романы:
современные любовные романы
6.00
рейтинг книги
По осколкам твоего сердца

Локки 5. Потомок бога

Решетов Евгений Валерьевич
5. Локки
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Локки 5. Потомок бога

Простолюдин

Рокотов Алексей
1. Путь князя
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Простолюдин

Вечный. Книга II

Рокотов Алексей
2. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга II

Неучтенный элемент. Том 11

NikL
11. Антимаг. Вне системы
Фантастика:
фэнтези
5.00
рейтинг книги
Неучтенный элемент. Том 11

Темная сторона. Том 1

Лисина Александра
9. Гибрид
Фантастика:
технофэнтези
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Темная сторона. Том 1

Кодекс Крови. Книга ХVIII

Борзых М.
18. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.25
рейтинг книги
Кодекс Крови. Книга ХVIII

Пламенев. Книга IX

Карелин Сергей Витальевич
9. Пламенев
Фантастика:
аниме
уся
сказочная фантастика
фэнтези
фантастика: прочее
5.00
рейтинг книги
Пламенев. Книга IX

Легат

Прокофьев Роман Юрьевич
6. Стеллар
Фантастика:
боевая фантастика
рпг
6.73
рейтинг книги
Легат

Брошенные тела

Дивер Джеффри
Детективы:
триллеры
6.90
рейтинг книги
Брошенные тела

Кодекс Охотника. Книга ХХХ

Винокуров Юрий
30. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга ХХХ