Поделиться через


Общие сведения о веб-разработке ASP.NET для мобильных устройств

Обновлен: Ноябрь 2007

Разработка страниц АSP.NET для обозревателей в мобильных устройствах мало отличается от разработки страниц для обозревателей персональных компьютеров. Чтобы облегчить создание приложений для мобильных устройств, ASP.NET предоставляет пространство имен System.Web.Mobile специально для веб-разработки для мобильных устройств.

Можно создавать веб-страницы из базового класса MobilePage и добавлять элементы управления из пространства имен System.Web.Mobile. Данное пространство имен определяет набор серверных веб-элементов управления и адаптеров для создания приложений, которые должны быть доступны для множества различных мобильных устройств, например мобильных телефонов.

ASP.NET 2.0 также предоставляет адаптивную архитектуру, которая позволяет создавать адаптеры настраиваемых устройств для серверных веб-элементов ASP.NET версии 2.0. Адаптеры могут создавать настраиваемую отрисовку для элементов управления на базе обозревателя, отправляющего запрос. Благодаря адаптивной архитектуре можно создавать настраиваемые адаптеры для серверных веб-элементов управления ASP.NET, чтобы визуализировать выходные данные, связанные с устройствами, имеющими доступ к приложению в обозревателе персонального компьютера.

Как для обозревателей персональных компьютеров, так и для обозревателей мобильных устройств разработка выполняется в соответствии со стандартной моделью .NET, управляемой событиями, в которой приложение отвечает на запросы пользователей, нажатия кнопки и т. д.

Архитектура приложений для мобильных устройств

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

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

Логика представления строится по похожему принципу. Например, если пользователь заполняет веб-форму, используя обозреватель для стационарного компьютера, он видит сразу множество элементов управления на экране. При проверке формы на сервере ошибки при проверке могут отображаться рядом с элементами управления. В случае с мобильным устройством отображение ввода в форму и результатов проверки в удобочитаемом формате может быть существенно затруднено. Кроме того, для мобильных устройств можно предоставлять ярлыки, которые облегчают ввод данных пользователем, поскольку на мобильных устройствах может быть неудобно печатать.

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

Серверные веб-элементы управления для мобильных устройств

Пространство имен ASP.NET версии 2.0 System.Web.Mobile предназначено специально для разработки веб-приложений для мобильных устройств. Можно создавать веб-страницы для мобильных устройств из базового класса MobilePage и добавлять серверные веб-элементы управления из пространства имен System.Web.Mobile. Серверные веб-элементы управления содержат несколько специализированных адаптеров в .NET.Framework, и, следовательно, оптимальны в целях разработки для мобильных устройств веб-приложений, предназначенных для широкого диапазона мобильных устройств.

Веб-серверные элементы управления ASP.NET и архитектура адаптера

Большинство веб-серверных элементов управления ASP.NET версии 2.0 соответствуют единой архитектуре адаптера. Это означает, что все элементы управления могут функционировать по-разному, в зависимости от устройства, отправляющего запрос путем вызова настраиваемого адаптера, который предоставляет соответствующие правила поведения для этого устройства; например, создание соответствующего языка разметки. Если адаптер настраивается в файле определений обозревателя для устройства или обозревателя, отправляющего запрос, ASP.NET вызывает адаптер для каждой стадии жизненного цикла серверного веб-элемента управления. В дальнейшем адаптер может регулировать отображаемые выходные данные и обрабатывать любую логику просмотра состояния для конкретного устройства или его особенности. Файл определений обозревателя находится в папке «Обозреватели» в каталоге «Конфигурация» в .NET Framework либо в папке «App_Browsers» веб-приложения.

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

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

Выбор настраиваемых адаптеров или элементов управления для мобильных устройств

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

Корпорация Microsoft планирует продолжать предоставление обновлений для адаптеров серверных веб-элементов управления для мобильных устройств по мере развития основных языков разметки. Это позволяет обеспечить поддержку новыми языками разметки уже используемых элементов управления. Например, при создании веб-узла электронной торговли, который поддерживает обозреватели для стационарных компьютеров, а также для большого числа мобильных устройств, следует создать страницы ASP.NET, которые наследуют от класса Page, и отдельный набор страниц, наследующих от базового класса MobilePage, и использовать элементы управления для мобильных устройств.

При необходимости можно создать собственные настраиваемые адаптеры или изменить существующие, в которых новые устройства будут определять требования к работе серверных веб-элементов управления для мобильных устройств.

В некоторых сценариях оправдано как использование серверных веб-элементов управления ASP.NET, так и создание настраиваемых адаптеров. Как правило, в данном случае речь идет о приложениях для обозревателей стационарных компьютеров, требующих изменений поведения обозревателя, либо для приложений, использование которых ограничено определенным классом устройств, которые могут не поддерживать элементы управления для мобильных устройств и их функции. В качестве примера можно привести создание заявления о страховом возмещении, который содержал интерфейс на основе обозревателя и интерфейс на основе обозревателя для мобильных устройств. Приложение в таком случае могло использовать те же классы базовой страницы для стандартной страницы и для страницы, предназначенной для отображения в обозревателе мобильного устройства. Далее потребуется создать настраиваемые адаптеры только для устройства, развертывание которого выполнялось на мобильной платформе.

См. также

Другие ресурсы

Создание веб-страниц ASP.NET для мобильных устройств