ЖАНРЫ

Шрифт:

Далее приведены еще некоторые полезные нововведения в Visual Studio 2010, которые могут быть полезны при разработке проектов на ASP.NET MVC.

Мультитаргетинг в Visual Studio 2010

В Visual Studio 2010 понятие мультитаргетинга, т. е. поддержка сразу нескольких версий платформы .NET, приобретает новые возможности. Так как .NET 4.0 Framework содержит новую версию исполняемой среды CLR 4.0, то при установке Framework не заменит собой .NET 3.5, но предложит двум версиям существовать одновременно. Теперь, в зависимости от выбранной версии Framework (рис. 9.10), IntelliSense в Visual Studio будет отображать именно характерные для номера Framework имена методов, свойств, полей и т. д.

Поддержка нескольких мониторов

Для удобства разработчиков, которые используют в своей работе несколько мониторов (от двух и более), Visual Studio 2010 содержит ряд нововведений, которые помогут в полной мере задействовать мониторы в работе.

В связи с тем, что все окна в Visual Studio 2008 были частью одного главного окна, пользователи не имели возможности вынести часть окон на другие мониторы. В Visual Studio 2010 это проблема решена, теперь разработчик может расположить любые панели инструментов, информационные окна, окна редакторов кода и другие на разных мониторах (рис. 9.11).

Сниппеты JavaScript, Html, ASP.NET в Visual Studio 2010

Сниппет — это полезный инструмент, который позволяет сократить время, затрачиваемое разработчиком на набор кода. Сниппет представляет собой короткую команду, которая разворачивается в некий шаблон кода. Например, сниппет foreach для C# разворачивается в одноименный шаблон создания цикла foreach. Для того чтобы использовать сниппет, необходимо набрать его и нажать клавишу <Tab>. Есть и другой способ: можно вызвать список сниппетов с помощью комбинации клавиш <Ctrl>+<K>, <Ctrl>+<X> и выбрать необходимый сниппет из списка.

Visual Studio 2010 вводит поддержку сниппетов для быстрого набора HTML-, ASP.NET- и JavaScript-кода (рис. 9.12). Использование сниппетов позволит значительно ускорить рутинный набор кода для ASP.NET-страниц и элементов управления или скриптов JavaScript.

Что дальше?

Кроме перечисленных ранее функций, которые появились в MV C 2 Preview 2, планируется, что финальный вариант ASP.NET MVC 2 будет содержать еще ряд нововведений:

? методы расширения 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, в котором необходимо проделать дополнительные действия.

Поделиться с друзьями: