Часть полного текста документа:"ASP.NET Atlas" - AJAX в исполнении Microsoft Игорь Тамащук Введение Словосочетание "Web 2.0" знакомо сейчас, пожалуй, всем, кто более или менее внимательно следит за развитием Internet-а. И всем, наверное, знаком термин AJAX, который используется в этой концепции. В своей статье я расскажу о проекте Atlas - фреймворке для разработки AJAX web-приложений, который предлагает компания Microsoft разработчикам на ASP.NET. С чего начать? Конечно, скачать и установить. Последнюю версию Atlas можно скачать с сайта http://atlas.asp.net/. Выполнив установку пакета VSI, в Visual Studio 2005 вам будет доступен новый тип проектов - ASP.NET "Atlas" Web Site. Кроме того, на сайте проекта вы можете скачать набор лабораторных работ и хороший пример приложения - "Atlas Wiki". С их помощью вы сможете шаг за шагом изучить все основные возможности этой библиотеки. Пример: автозаполнение и частичный рендеринг формы Можно много писать о том, что же такое AJAX, концептуальной составляющей Atlas, заглядывать в Road Map, сравнивать с альтернативными продуктами. Но, конечно же, ничего лучше не расскажет о библиотеке, чем показательный пример. Все наверняка видели, как работает web-интерфейс почтовой система GMail. И все помнят, одну из приятных возможностей, доступных пользователю - автозаполнение поля адреса получателя. В нашей статье мы попробуем повторить подвиг разработчиков из команды GMail, разработав небольшую поисковую систему, с использованием Atlas. Создание проекта Итак, Atlas установлен. Открываем Visual Studio 2005, создаем новый сайт, в качестве типа сайта выбираем "ASP.NET 'Atlas' Web Site", выбираем место размещения сайта и нажимаем "ОК". У вас должна получиться следующая структура проекта: Сайт Atlas на самом деле не представляет из себя ничего сложного. Для того чтобы подключить Atlas к любому сайту, нужно выполнить несколько шагов: Добавить ссылки на сборку Microsoft.Web.Atlas.dll; Добавить в проект папки со скриптами Atlas; Сконфигурировать сайт должным образом. Третий шаг - самый "емкий" из всех. Поэтому распишем его подробнее. Для начала необходимо зарегистрировать конфигурационную секцию для Atlas: ..... И добавить саму секцию, сразу после ее описания: Вкратце, что такое конвертеры. Забегая вперед, скажу, что Atlas-сайт может взаимодействовать с серверной логикой посредством web-сервисов. Методы сервисов могут возвращать клиенту данные произвольных типов: DataSet, string[], DataTable и т.д. Но в этом месте мы получаем так называемый "архитектурный разрыв". Если в качестве клиента выступает любое другое .NET приложение, то в большинстве случаев типы, используемые в декларации сервисов, находят свои отражения и на клиентской стороне. DataSet это DataSet, массив строк - это массив строк. В случае же, когда мы имеем дело с гетерогенными системами, общающимися через web-сервисы, встает проблема узнавания и преобразования типов. То есть мы в нашем случае должны ответить на вопрос, как наш javascript-клиент будет взаимодействовать с web-сервисом, который возвращает выборку данных в виде DataSet? Что такое DataSet для клиента? Так вот, в нашей конфигурации мы и указали, как Atlas будет обеспечивать "узнаваемость" таких возвращаемых типов, как DataSet, DataTable и DataRow, преобразовывая их в известные и понятные для клиентского кода структуры. После настройки конвертеров, добавим в файл web.config следующую секцию: Здесь мы просто-напросто регистрируем глобально контролы Atlas для использования. Следующая секция играет более важную, если не самую важную роль во всей конфигурации Atlas: Здесь мы подменяем стандартный HttpHandler для web-сервисов, на HttpHandler, который поставляется с Atlas. ............ |