Введение в продукты и технологии SharePoint для профессионального разработчика .NET
Обзор: рассмотрение расширяемой платформы продуктов и технологий SharePoint и возможностей ее использования при разработке .NET-приложений (32 печатных страницы).
Эрика Эрли Кабрал, корпорация Майкрософт
Пол Эндрю, корпорация Майкрософт
Июнь, 2008
Применимо к: ASP.NET 2.0, выпуск 2007 системы Microsoft Office, Microsoft Office SharePoint Server 2007, Microsoft Office SharePoint Designer 2007, Visual Studio 2008 Extensions for Windows SharePoint Services 3.0, v1.2, набор средств Visual Studio Tools для системы Office (3.0), Windows SharePoint Services 3.0
Содержание
Обзор
Преимущества для разработчиков .NET
Что такое продукты и технологии SharePoint?
Создание решений SharePoint с помощью Visual Studio 2008
Терминология SharePoint
Компоненты, используемые для создания корпоративных решений
Изучение и начало работы с продуктами и технологиями SharePoint
Заключение
Благодарности
Дополнительные ресурсы
Обзор
Продукты и технологии SharePoint предоставляют профессиональным разработчикам приложений Microsoft .NET расширяемую платформу и предлагают широкий набор встроенных компонентов, а также возможности размещения приложений с помощью хорошо известных разработчикам .NET средств разработки и технологий. Продукты и технологии SharePoint обеспечивают управляемую и масштабируемую серверную платформу для размещения на корпоративном веб-сайте или веб-сайте в Интернете клиентских приложений, созданных на базе выпуска 2007 системы Microsoft Office
Разработчики .NET создают интернет-решения с помощью платформы для веб-разработки ASP.NET, предоставляющей возможность использования управляемого кода. Платформа веб-страниц ASP.NET также предлагает такие функции, как главные страницы, веб-части и элементы управления источниками данных.
Объединяя преимущества и мощь обеих платформ, с выпуска 2007 системы Microsoft Office компания Майкрософт предлагает продукты и технологии Windows SharePoint Services 3.0 и Microsoft Office SharePoint Server 2007, представляющие собой расширения ASP.NET 2.0. Теперь профессиональный разработчик .NET может воспользоваться своими знаниями технологий .NET для создания новых интернет-решений на основе платформы SharePoint.
Цель данной статьи — предоставить базовые сведения о наиболее мощных возможностях для разработки решений SharePoint. Будут рассмотрены ключевые концепции, терминология, компоненты, используемые для создания корпоративных решений, а также приведены ссылки на ресурсы, чтобы помочь разработчикам приступить к изучению процесса создания решений SharePoint. В статье также рассматриваются средства, которые можно использовать при создании решений с помощью продуктов и технологий SharePoint.
Преимущества для разработчиков .NET
Продукты и технологии SharePoint предоставляют целый ряд преимуществ не только для разработчиков и создаваемых ими продуктов, но также для отдельных пользователей и организаций любого уровня.
Продукты и технологии SharePoint предоставляют разработчикам .NET дополнительные возможности. К ним относятся:
Знакомая программисту .NET среда разработки. Службы Windows SharePoint Services 3.0 целиком основаны на ASP.NET, что позволяет работать со знакомой платформой .NET Framework, языками .NET, использовать те же библиотеки классов .NET Framework и ASP.NET и те же средства разработки.
Встроенные возможности, которые разработчики могут расширять. Windows SharePoint Services 3.0 добавляет фундаментальные компоненты, которые важны при создании таких веб-приложений, как веб-части, списки данных, библиотеки документов, приложения управления рабочими процессами, шаблоны веб-сайтов. Office SharePoint Server 2007 расширяет службы Windows SharePoint Services 3.0 существенными новыми возможностями для приложений. К ним относятся: предоставление пользовательских веб-сайтов, компоненты бизнес-аналитики, службы электронных форм, управление корпоративным содержимым, интегрированный поиск, компоненты социальных сетей. Все эти функции могут быть расширены разработчиками для реализации широкого круга продуктов от простых веб-панелей до комплексных веб-приложений.
Лучший интегрированный сервер для приложений Office. Если требуется хранить документы как части веб-приложения, решение заключается в использовании Office SharePoint Server 2007. Клиентские приложения Office, включая Word, Excel, Outlook InfoPath, можно легко использовать в составе корпоративного решения, построенного на основе SharePoint.
Основа для разнообразных приложений Интернета и интрасети. Для конечных пользователей продукты и технологии SharePoint имеют ряд простых и удобных функций. Для разработчиков продукты и технологии SharePoint выступают платформой создания приложений. Поскольку разработка приложений производится на основе одной и той же платформы SharePoint, пользователям предоставляются приложения с согласованным внешним видом и управлением. Если компания уже развернула SharePoint, новые приложения легко добавлять к существующей инфраструктуре.
Что такое продукты и технологии SharePoint?
Технологии и продукты SharePoint предоставляют основу для совместной работы, реализации бизнес-аналитики, управления корпоративным содержимым, служб персонализации, корпоративной системы поиска, интеграции бизнес-данных и процессов.
Продукты и технологии SharePoint включают:
Windows SharePoint Services 3.0. Набор служб для совместной работы и основа для построения веб-приложений на базе Windows Server. Windows SharePoint Services 3.0 входит в состав Windows Server 2003 и Windows Server 2008, а также доступен отдельно по следующей ссылке: download.
Microsoft Office SharePoint Server 2007. Независимое интегрированное приложение, предоставляющее сотрудникам возможность эффективно взаимодействовать с членами рабочих групп, выполнять поиск организационных ресурсов, экспертов и корпоративной информации, управлять содержимым и рабочим процессом, а также обеспечивающее получение всей необходимой для принятия бизнес-решений информации. Office SharePoint Server 2007 входит в состав выпуска 2007 системы Microsoft Office. Дополнительные сведения см. в статье Microsoft Office SharePoint Server 2007: вопросы и ответы.
Microsoft Office SharePoint Designer 2007. Средство для разработчиков и веб-дизайнеров, которое позволяет быстро создавать решения, включающие реализацию логики рабочего процесса и разработку пользовательского интерфейса.
Windows SharePoint Services 3.0 и Office SharePoint Server 2007 расширяют платформу ASP.NET 2.0 и технологию Microsoft .NET 3.0 Windows Workflow Foundation, как показано на рисунке 1.
Рисунок 1. Продукты и технологии SharePoint
Windows SharePoint Services 3.0
Windows SharePoint Services 3.0 — это технология, включающая набор инструментов для совместной работы, обеспечивающих простой доступ к документам, содержимому, пользователям и данным. Windows SharePoint Services 3.0 также предоставляет 8 функций или сервисов, позволяющих разработчикам создавать мощные и масштабируемые веб-приложения, обеспечивая таким образом инструменты для совместной работы. Возможности Windows SharePoint Services 3.0 (см. рисунок 1):
Администрирование. Классы и компоненты пространства имен Microsoft.SharePoint.Administration предоставляют администраторам инструменты и средства для развертывания, миграции, обслуживания и администрирования веб-сайтов SharePoint и решений на основе SharePoint. Дополнительные сведения см. на веб-сайте Windows SharePoint Services Administration Resource Center.
Управление данными. Службы Windows SharePoint Services 3.0 обеспечивают интуитивную, удобную среду для совместного использования и хранения данных. Они включают ряд методов для управления содержимым и метаданными бизнес-документов и данных. Интегрированное прямое и обратное распространение свойств поддерживает синхронизацию между метаданными в службах Windows SharePoint Services и метаданными в документах Office.
Информационные службы. Информационные службы в Windows SharePoint Services 3.0 включают входящую электронную почту, уведомления о получении электронной почты и инструменты поиска. Эти функции позволяют организовывать эффективный процесс взаимодействия рабочих групп, предоставляя удобные средства доступа к пользователям, документам и данным. Службы Windows SharePoint Services могут помочь пользователям выполнять задачи и принимать решения на основе максимального объема доступной информации.
Страницы и пользовательский интерфейс. Страничная модель в Windows SharePoint Services 3.0 расширяет ASP.NET 2.0, создавая новые динамичные способы настройки и управления дизайном страниц. Страницы SharePoint, отображаемые в браузере, конструируются посредством управляющих шаблонов главных страниц и ASCX-файлов. Разработчик может создавать собственные шаблоны, переопределяющие шаблоны по умолчанию, а также программно модифицировать отображаемые на страницах меню элементы управления TreeView и области переходов. Дополнительные сведения см. на веб-сайте Windows SharePoint Services Pages and User Interface Resource Center.
Подготовка. Когда создается список или сайт, определение или шаблон задают, каким образом будет создан экземпляр этого списка или сайта. В отличие от обычных приложений ASP.NET, физическая ASPX-страница не требует существования каждой страницы на сервере. Windows SharePoint Services обрабатывает каждую страницу, не настроенную в качестве виртуального файла, который позволяет использовать ограниченное количество файлов сразу во многих местах. Дополнительные сведения о том, как это работает, см. в статье Understanding and Creating Customized and Uncustomized Files in Windows SharePoint Services 3.0. Определение или шаблон задают, например, списки, файлы, веб-части, компоненты или настройки, с которыми подготавливается новый список или сайт. Дополнительные сведения см. на веб-сайте Windows SharePoint Services Provisioning Resource Center.
Безопасность. Средства обеспечения безопасности Windows SharePoint Services 3.0, реализованные на базе платформ ASP.NET 2.0 и .NET Framework 3.0, предоставляют защиту от случайных или намеренных несанкционированных изменений данных и гарантируют, что конфиденциальная информация будет доступна только тем сотрудникам, которым разрешено иметь к ней доступ. Продукты и технологии SharePoint помогают создать безопасную инфраструктуру путем интеграции со службами IIS и Windows Server, предоставляя механизмы проверки подлинности и авторизации. Дополнительные сведения см. на веб-сайте Windows SharePoint Services Security Resource Center.
Веб-части. Веб-части в Windows SharePoint Services предоставляют разработчикам возможность создавать элементы пользовательского интерфейса с поддержкой настройки и персонализации. Владелец сайта или участник сайта с соответствующими разрешениями может настроить страницы веб-частей, используя браузер или Microsoft Office SharePoint Designer 2007, и добавлять, переконфигурировать или удалять веб-части. Дополнительные сведения см. на веб-сайте Windows SharePoint Services Web Parts Resource Center.
Рабочий процесс. Рабочие процессы реализуют пользовательские бизнес-процессы, которые можно прикрепить к документам SharePoint и элементам списка. С помощью рабочих процессов в Windows SharePoint Services можно управлять почти любыми аспектами элемента, в том числе жизненным циклом этого элемента. Дополнительные сведения см. на веб-сайте Workflow Resource Center.
Windows SharePoint Services 3.0 и Office SharePoint Server 2007 предоставляют управляемую объектную модель, позволяющую программными средствами настраивать сайты SharePoint. Разработчик может интегрировать эту объектную модель в приложение ASP.NET, реализовав программный доступ из приложения к документам, содержимому, пользователям и данным. Дополнительные сведения см. в статье Programming in Windows SharePoint Services.
Microsoft Office SharePoint Server 2007
Microsoft Office SharePoint Server 2007 — серверный продукт, основанный на технологии Windows SharePoint Services 3.0. Он обеспечивает единообразную, знакомую пользователю инфраструктуру для списков и библиотек, администрирования и настройки сайтов. Кроме того, Office SharePoint Server 2007 предоставляет:
средства эффективного поиска пользователей, документов и данных;
участие в бизнес-процессах, построенных с помощью форм;
доступ и анализ большого объема бизнес-данных.
Office SharePoint Server 2007 также позволяет создавать решения на основе веб-технологий и сайты, которые поддерживают управление содержимым, управление записями, определенные виды публикации содержимого и решение задач бизнес-аналитики. Office SharePoint Server 2007 предоставляет встроенные компоненты, помогающие разработчикам создавать полнофункциональные интернет-решения. Вследствие этого Office SharePoint Server 2007 может радикально сократить время разработки и обеспечить возможности по созданию масштабируемых корпоративных приложений, способные удовлетворить самые высокие требования компаний.
На рисунке 2 представлены возможности Office SharePoint Server 2007.
Рисунок 2. Возможности Office SharePoint Server 2007
Office SharePoint Server 2007 предоставляет 6 возможностей или сервисов, позволяющих разработчикам настраивать и расширять функциональность и масштабируемость веб-приложений.
Совместная работа и социальные вычисления. Office SharePoint Server 2007 предоставляет веб-части, на базе которых можно обеспечить функционирование социальных вычислений, вики-ресурсов, блогов, RSS-лент, интеграцию электронной почты и координацию в решении задач. Все эти компоненты используют сведения о конкретной организации, сообщества и электронные коммуникации на страницах общедоступных веб-сайтов с целью содействия в установлении связей между коллегами с общими интересами. Дополнительные сведения см. в статье Совместная работа.
Порталы. Office SharePoint Server 2007 — это платформа для создания порталов компаний мирового уровня, которая упрощает проектирование и обслуживание сайтов портала по каждому из аспектов деятельности компании. Эта платформа предоставляет встроенные личные сайты "Мой сайт", объединение содержимого, профили пользователей, хранилище профилей, выбор целевой аудитории, поддержку мобильных устройств, шаблоны сайтов портала, агрегирование документов, веб-части и др. Дополнительные сведения см. в статье Developer-Oriented Videos on Building Portals.
Корпоративный поиск. Средства корпоративного поиска в Microsoft Office SharePoint Server 2007 обеспечивают возможность всестороннего и гибкого сбора данных, выполнения индексирования и создания запросов. Эта служба поддерживает полнотекстовой поиск, используя в запросах синтаксис SQL, и реализует новый синтаксис ключевых слов для поддержки поиска по ключевым словам. Дополнительные сведения см. на веб-сайте Enterprise Search Information Center.
Управление корпоративным информационным содержимым. Функции управления корпоративным информационным содержимым обеспечивают возможности управления содержимым и метаданными деловых документов, хранящихся в библиотеках документов Office SharePoint Server 2007. Управление корпоративным информационным содержимым — ключевой инфраструктурный компонент, который может помочь компаниям управлять и упорядочивать большие объемы таких неструктурированных данных, как формы, документы, записи, сообщения электронной почты, видеофайлы, мгновенные сообщения и веб-страницы. Дополнительные сведения см. на веб-сайте Enterprise Content Management Information Center.
Бизнес-процесс и формы. Office SharePoint Server 2007 предоставляет встроенные электронные формы и шаблоны рабочих процессов. Служба InfoPath Forms Services, входящая в состав Office SharePoint Server 2007, позволяет разработчикам публиковать на сервере Office SharePoint Server 2007 шаблоны форм InfoPath (разработанных в Microsoft Office InfoPath 2007) в виде веб-приложений ASP.NET. Разработчик может использовать браузер для заполнения и редактирования форм таким же образом, как и в InfoPath. Дополнительные сведения см. на веб-сайте InfoPath Forms Services Resource Center. Кроме того, Office SharePoint Server 2007 предоставляет несколько встроенных рабочих процессов: рабочий процесс для утверждения документов, рабочий процесс с тремя состояниями и рабочий процесс управления переводом. Разработчик также может написать собственный код создания, ведения и анализа рабочих процессов, позволив заказчику рационализировать его бизнес-процессы. Дополнительные сведения см. на веб-сайте Workflow Resource Center.
Бизнес-аналитика. Office SharePoint Server 2007 обеспечивает инфраструктуру для создания цифровых панелей, предоставляющих доступ к информации лицам, ответственным за принятие решений. Серверная технология Excel Services, входящая в состав Office SharePoint Server 2007, — это общая служба, которая позволяет загружать, проводить вычисления и отображать книги Excel в Office SharePoint Server 2007. Разработчик может использовать программируемую платформу служб Excel для расширения возможностей Microsoft Office Excel 2007, а также для работы со списками Office SharePoint Server 2007, запросами таблиц через службы Excel, ссылками на внешние книги и пользовательскими функциями. Дополнительные сведения см. на веб-сайте Excel Services Resource Center. Наряду с этим, функциональность каталога бизнес-данных в Office SharePoint Server 2007 позволяет разработчику представлять в Office SharePoint Server бизнес-данные. С помощью каталога бизнес-данных разработчик может передавать ключевые данные из различных бизнес-приложений в списки SharePoint, веб-части, службе поиска, профилям пользователей и в приложения. Каталог бизнес-данных позволяет разработчику извлекать данные из Microsoft SQL Server, Oracle, Microsoft Office Access и других баз данных с помощью строки подключения. Он также позволяет разработчику получать бизнес-данные с помощью веб-служб от таких приложений, выполняющихся на фоновых серверах, как SAP, Siebel, а также из других бизнес-систем. Для определения бизнес-сущности разработчик может использовать Business data catalog metadata model, а для программного управления метаданными — Administration Object Model. Дополнительные сведения см. на веб-сайте Business Data Catalog Information Center.
Примечание. Для настройки и расширения Office SharePoint Server 2007 доступно несколько программных интерфейсов API и веб-служб. Полный список классов и пространств имен Office SharePoint Server 2007 см. в библиотеке классов и справке по веб-службам Microsoft Office SharePoint Server 2007 SDK.
Дополнительные сведения см. в статье Microsoft Office SharePoint Server 2007 Capabilities.
Microsoft Office SharePoint Designer
Microsoft Office SharePoint Designer 2007 — инструмент разработчика, специально предназначенный для создания и настройки сайтов SharePoint, приложений с поддержкой рабочих процессов и средств формирования отчетов. Этот инструмент предоставляет возможность проектирования интерфейса в режиме WYSIWYG, среду разработки и простые в использовании средства разработки, которые помогают упростить решение задач создания сайтов и приложений. Разработчики ASP.NET могут воспользоваться своими знаниями и использовать это средство для создания, просмотра и изменения страниц ASP.NET. Проектирование интерфейса в режиме WYSIWYG обеспечивает точное отображение кода XHTML (расширяемого языка гипертекстовой разметки), каскадных таблиц стилей (CSS) и технологий ASP.NET. Это средство также предоставляет поддержку Microsoft IntelliSense, веб-частей и элементов управления ASP.NET.
Кроме того, разработчик может использовать Office SharePoint Designer 2007 для определения и управления макетом и дизайном страниц, создания главных страниц, проектирования списков и типов содержимого, создания элементов данных и страниц для веб-частей, связывания веб-частей, реализации форм, средств просмотра данных, а также рабочих процессов без написания кода.
С помощью этого инструмента разработчик может легко, без необходимости в написании серверного кода, создавать приложения SharePoint, которые содержат представления списков, формы, данные из внешних источников и рабочие процессы. Разработчик может использовать для представления данных в решениях SharePoint такие источники данных, как списки SharePoint, XML-файлы, службы SOAP, серверные скрипты, базы данных SQL (например, SQL Server 2005), RSS-ленты и веб-службы. Дополнительные сведения см. на веб-сайте SharePoint Designer Developer Portal.
Создание решений SharePoint с помощью Visual Studio 2008
Visual Studio 2008 включает средства, повышающие скорость разработки на платформе .NET Framework 3.5. К ним относятся: визуальные конструкторы, значительные улучшения в средствах веб-разработки, а также расширения в языках программирования, ускоряющие процесс разработки со всеми типами данных. Visual Studio 2008 позволяет организациям любого уровня быстро создавать более безопасные, управляемые и надежные приложения, которые используют преимущества операционной системы Windows Vista и выпуска 2007 системы Microsoft Office.
Набор средств Visual Studio Tools для системы Office 3.0 и поддержка рабочих процессов
Как полностью интегрированный компонент Visual Studio 2008, набор средств Visual Studio для системы Office 3.0 предлагает расширенную поддержку для приложений Microsoft Office 2003 и выпуска 2007 системы Microsoft Office путем использования языков Microsoft Visual Basic и Microsoft Visual C#. Набор средств Visual Studio для системы Office 3.0 ускоряет и уменьшает сложность создания рабочих процессов SharePoint, помогая в управлении бизнес-процессами и информационными потоками. Дополнительные сведения см. в статье Building Office Business Applications Using Visual Studio Tools for the Office System (3.0).
Visual Studio 2008 Extensions for Windows SharePoint Services 3.0, v1.2
Visual Studio 2008 Extensions for Windows SharePoint Services 3.0, v1.2 — надстройка для Visual Studio 2008, которая упрощает кодирование решений SharePoint. Она включает набор шаблонов проектов для веб-частей и определений сайтов, а также отдельную программу SharePoint Solution Generator. Дополнительные сведения см. в статье Announcing the Final Release of VSeWSS 1.1 (and the upcoming version 1.2). Загрузить надстройку можно по этой ссылке: Visual Studio 2008 Extensions for Windows SharePoint Services 3.0, v1.2.
На рисунке 3 показаны различные шаблоны проектов Visual Studio, предоставляемые пакетом Visual Studio 2008 Extensions for Windows SharePoint Services 3.0, v1.2.
Рисунок 3. Шаблоны проектов Visual Studio, предоставляемые пакетом Visual Studio 2008 Extensions for Windows SharePoint Services 3.0, v1.2
Visual Studio 2008 или SharePoint Designer?
Office SharePoint Designer 2007 тесно интегрирован со службой Windows SharePoint Services 3.0 и сервером Office SharePoint Server 2007, поэтому является предпочтительным средством для тех разработчиков, которые хотели бы создавать приложения SharePoint или проектировать и настраивать сайты SharePoint быстро, эффективно и без написания кода. Однако, если требуется большая гибкость для настройки и расширения сайтов SharePoint, можно также использовать Visual Studio 2005 или Visual Studio 2008. Дополнительные сведения см. в статье Getting Started with Programmatically Customizing a SharePoint Web Site in Visual Studio.
Многие разработчики используют и SharePoint Designer, и Visual Studio. SharePoint Designer упрощает решение задач проектирования, а Visual Studio предоставляет эффективную среду для разработки кода.
Терминология SharePoint
Чтобы познакомить читателя с лексикой SharePoint, используемой в данной статье, ниже даны определения основных терминов и приведены ссылки на дополнительные ресурсы.
Страница приложения. Позволяет использовать встроенный пользовательский код. Страницы приложения (или страницы "_layout") хранятся на веб-сервере SharePoint и могут быть доступны через виртуальный каталог IIS. Несмотря на то, что страницы приложения очень напоминают другие страницы ASPX и позволяют использовать встроенный пользовательский код, они отличаются от страниц содержимого тем, что не могут быть использованы для размещения таких компонентов SharePoint, как динамические веб-части и зоны веб-частей. Дополнительные сведения см. в статье Creating an Application Page in Windows SharePoint Services 3.0.
Тип содержимого. Повторно используемая коллекция настроек для применения к определенным категориям содержимого, например документам и папкам. Типы содержимого предназначены для того, чтобы помочь пользователям организовать их содержимое SharePoint более структурно. Дополнительные сведения см. в статье Introduction to Content Types.
Настраиваемое действие. Представляет ссылку, кнопку панели инструментов, пункт меню или какой-либо элемент управления, который может быть добавлен в панель инструментов или в меню, отображаемое в пользовательском интерфейсе. Разработчик определяет настраиваемые действия путем использования элемента настраиваемого действия в файле определения компонента. Разработчик может связать настраиваемое действие с типом списка, типом содержимого, типом файла или программным идентификатором (ProgID). Дополнительные сведения см. в статье Custom Action Definitions.
Приемник события. Средство оценки события и определения поведения приложения. Windows SharePoint Services 3.0 позволяет определить обработчики событий в библиотеках, списках и сайтах. Приемники событий могут быть определены с помощью элемента приемника в файле определения компонента. Дополнительные сведения см. в статье Event Registrations.
Компонент. Пакет элементов Windows SharePoint Services, используемый в определенной области и помогающий пользователям решить конкретную задачу. Windows SharePoint Services 3.0 вводит эту динамичную и модульную функциональность, упрощающую процедуру модификации сайтов посредством их определения. Дополнительные сведения см. в статье Working with Features.
Главная страница. Страницы, обеспечивающие согласованный макет и внешний вид для сайтов SharePoint. Это дает возможность многократного использования макета, структуры и таких элементов интерфейса, как заголовки, колонтитулы, панели навигации и прототипы содержимого. Главные страницы в ASP.NET 2.0 и главные страницы в Windows SharePoint Services работают одинаково. Дополнительные сведения см. в статье Building Simple Master Pages for Windows SharePoint Services 3.0.
Модуль. Файл или коллекция экземпляров файлов, где определяются пути установки файлов при создании сайта. Модули часто используются при реализации на сайте страницы для веб-частей. Разработчик может определять модули путем использования элемента модуля в файле определения компонента. Дополнительные сведения см. в статье Modules.
Сайт SharePoint. Веб-сайт, находящийся по виртуальному URL-адресу. Сайт SharePoint — это место для совместной работы, общения или хранения содержимого. В зависимости от стоящих задач разработчик может создавать такие сайты, как группы, блоги, вики-сайты и др. Разработчик может настраивать внешний вид сайта, разрешения и другие атрибуты пользователей, галереи, а также выполнять управленческие задачи со страниц администрирования параметров сайта.
Семейство веб-сайтов SharePoint. Набор сайтов SharePoint, которые имеют общие параметры и страницы администрирования. Семейство веб-сайтов позволяет разработчику использовать в одной группе сайтов SharePoint общие типы содержимого, столбцы сайта, шаблоны и веб-части.
Веб-ферма SharePoint. Группа серверов Office SharePoint 2007, имеющих одну базу данных конфигурации. Все содержимое сайтов и все конфигурационные данные разделяются между всеми интерфейсными веб-серверами в одной ферме серверов.
Определение сайта. Набор файлов, включающий главный XML-файл конфигурации. Этот набор файлов хранится на всех интерфейсных веб-серверах. Определение сайта задает базовую структуру внешнего вида и поведения сайта, перечень включаемых списков, его навигационную структуру по умолчанию и т.д. Дополнительные сведения см. в статье Working with Site Templates and Definitions.
Шаблон сайта. Пакет, который содержит набор отличий и изменений по сравнению с базовым определением сайта и создается через пользовательский интерфейс или посредством реализации объектной модели. Пакет шаблона сайта сохраняется как CAB-файл, который может быть загружен в семейство веб-сайтов (а также выгружен из семейства веб-сайтов) пользователями, имеющими необходимые права. Шаблоны сайтов являются инструментом для переноса приложений SharePoint. Дополнительные сведения см. в статье Working with Site Templates and Definitions.
Решение. Файл, который объединяет все компоненты в пакет с целью расширения возможностей Windows SharePoint Services определенным образом. Решение — это развертываемый, повторно используемый пакет, содержащий набор компонентов, определения сайтов и сборки, которые применяются к сайтам и которые разработчик может по отдельности разрешить или запретить. Разработчик может использовать файл решения для развертывания содержимого пакета веб-частей, включая сборки, ресурсы классов и другие компоненты пакета. Файл решения имеет формат CAB с расширением WSP. Дополнительные сведения см. в статье Solution Overview.
Тема. Группа файлов (CSS, изображения), позволяющая разработчику определить внешний вид веб-страниц. Темы в ASP.NET 2.0 и темы в продуктах и технологиях SharePoint работают одинаково. Темы помогают компаниям придать фирменный стиль их порталам и сайтам групп. Хотя Office SharePoint Server 2007 включает набор предопределенных тем, разработчик может создавать собственные темы. Дополнительные сведения см. в статье How to: Customize Themes.
Компоненты, используемые для создания корпоративных решений
Продукты и технологии SharePoint предлагают разнообразные встроенные средства разработки. Как уже упоминалось, к ним относятся: инструменты для совместной работы и социальных вычислений, платформа для создания корпоративных порталов, корпоративный поиск, управления корпоративным информационным содержимым, бизнес-процессы, формы и бизнес-аналитика. Платформа .NET Framework обеспечивает набор средств, позволяющих настраивать и расширять эти возможности. Разработчики .NET найдут удобный набор компонентов, используемых для создания корпоративных решений. В следующем разделе этой статьи описываются различные компоненты и артефакты разработки решений, которые можно использовать, приступая к созданию приложений SharePoint.
Веб-части
Как уже говорилось, разработчик может создавать веб-части SharePoint так же, как и в ASP.NET. Но кроме того, администраторы сайтов могут развернуть веб-части на сайтах SharePoint. Как часть сайта SharePoint веб-часть сразу же доступна конечным пользователям для добавления к страницам или использования для персонализации страниц.
Пример. Допустим, разработчик создает настраиваемую веб-часть ASP.NET, которая отображает транспортные маршруты, исходя из начальной точки, представляемой свойством, которое пользователи могут персонализировать. Чтобы создать веб-часть, разработчик создает проект библиотеки классов, который содержит элемент управления, наследуемый от класса System.Web.UI.WebControls.WebParts.WebPart В этом классе он переопределяет метод CreateChildControls для управления отрисовкой HTML. После завершения кодирования класса разработчик компилирует этот проект и добавляет ссылку на библиотеку DLL проекта веб-части в основной веб-проект. Наконец, чтобы показать веб-часть на веб-форме, он добавляет этот элемент управления к зоне веб-частей.
Одно из преимуществ разработки веб-частей ASP.NET заключается в том, что разработчик может повторно использовать их в сайтах SharePoint. На рисунке 4 показана настраиваемая веб-часть транспортных маршрутов, выполняющаяся на сайте SharePoint на веб-странице ASP.NET 2.0. Другим преимуществом является то, что разработчик может создавать веб-части, которые обеспечивают полный набор функций Windows SharePoint Services, например сервисы для работы с документами, события, рабочие процессы, системы поиска, столбцы сайта, типы содержимого и др.
Рисунок 4. Настраиваемая веб-часть транспортных маршрутов, выполняющаяся на сайте SharePoint на веб-странице ASP.NET 2.0.
Дополнительные сведения см. в статье Working with ASP.NET 2.0 Web Parts and Windows SharePoint Services 3.0.
Списки данных
Windows SharePoint Services позволяет разработчикам создавать списки и настраивать их путем добавления требующихся столбцов данных. Список состоит из элементов (строк) и столбцов (полей), содержащих данные. Для ASP.NET необходимо создать новую или воспользоваться существующей базой данных SQL Server и создать в ней таблицы с требуемыми столбцами. Затем разработчик должен создать компоненты пользовательского интерфейса, с помощью которых пользователи будут заполнять столбцы данными. Windows SharePoint Services предоставляет все необходимые средства для удобного управления структурами данных в форме, содержащей списки, и для работы с отдельными записями в этих структурах данных.
Давайте рассмотрим сценарий, в котором вы являетесь консультантом нескольких проектов. Ваш менеджер просит создать настраиваемый список проектов и предоставить ему доступ к этому списку с помощью интрасети. Поскольку ваша компания имеет сайт SharePoint, вы решаете создать настраиваемый список, в котором для каждого проекта отображается заголовок, срок сдачи, состояние, документация, фамилии руководителей и стоимость. На рисунке 5 показан настраиваемый список "Проекты".
Рисунок 5. Настраиваемый список "Проекты"
Разместив этот список на сайте SharePoint, тем самым вы обеспечиваете сотрудникам доступ к сведениям о проектах. И даже, как разработчик, вы можете программно обращаться к данным, хранящимся в этом списке. Windows SharePoint Services 3.0 предоставляет набор веб-служб и классов, которые позволяют пользователям работать с данными списков SharePoint.
Другой сценарий. Пусть вы хотите создать страницу ASPX с элементом управления "Надпись". Этот элемент управления будет отображать сведения о тех элементах списка "Проекты", у которых значение поля Cost (Стоимость) превышает 5000 долларов США. Чтобы вывести эти сведения, добавьте к классу в файле фонового кода пространство имен Microsoft.SharePoint и пространство имен Microsoft.SharePoint.Utilities. Также необходимо написать код, который будет обращаться к данным, хранящимся в списке "Проекты", как показано в следующем примере.
protected void Page_Load(object sender, EventArgs e) {
if (!IsPostBack){
SPWeb oWeb = SPContext.Current.Web;
SPList oList = oWeb.Lists["Projects"];
SPQuery oQuery = new SPQuery();
oQuery.Query = "<Where><Gt><FieldRef Name='Cost'/>" +
"<Value Type='Number'>5000</Value></Gt></Where>";
SPListItemCollection collListItems = oList.GetItems(oQuery);
StringBuilder sb = new StringBuilder();
// The indenting of the following lines of code has been
// modified for readability. Please modify as
// needed.
foreach (SPListItem oListItem in collListItems){
sb.Append("Item: ");
sb.Append(SPEncode.HtmlEncode(Convert.ToString(oListItem["Title"])));
sb.Append("::Value: ");
sb.Append(SPEncode.HtmlEncode(Convert.ToString(oListItem["Status"])));
sb.Append("::Calculated: ");
sb.Append(SPEncode.HtmlEncode(ConvertToString(oListItem["Cost"])));
sb.Append("<BR>"); }
}
Label1.Text = sb.ToString();
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not IsPostBack Then
Dim oWeb As SPWeb = SPContext.Current.Web
Try
Dim list As SPList = oWeb.Lists("Projects")
Dim query As New SPQuery()
query.Query = "<Where><Gt><FieldRef Name='ProjectedValue'/>" +
"<Value Type='Number'>5000</Value></Gt></Where>"
Dim listItems As SPListItemCollection = list.GetItems(query)
Dim listItem As SPListItem
Dim sb As StringBuilder = New StringBuilder
' The indenting of the following lines of code has been
' modified for readability. Please modify as
' needed.
For Each listItem In listItems
sb.Append("Item: ")
sb.Append(SPEncode.HtmlEncode(Convert.ToString(oListItem("Title"))))
sb.Append("::Value: ")
sb.Append(SPEncode.HtmlEncode(Convert.ToString(oListItem("Status"))))
sb.Append("::Calculated: ")
sb.Append(SPEncode.HtmlEncode(ConvertToString(oListItem("Cost"))))
sb.Append("<BR>")
Next listItem
Label1.Text = sb.ToString
Finally
siteCollection.Dispose()
End Try
End If
End Sub
Дополнительные сведения см. в статье Lists (How Do I... in Windows SharePoint Services).
Обработчики событий (также называемые получателями событий)
Windows SharePoint Services позволяет программными средствами создавать, управлять и извлекать данные из списков и библиотек документов. Чтобы обрабатывать синхронные и асинхронные события, необходимо создать классы получателей. Можно перехватить и переопределить обработку событий настраиваемых списков, библиотек документов, сайтов и пользовательских операций. Эту возможность обеспечивают SQL-триггеры на списках SharePoint.
Пусть, например, необходимо запретить удаление пользователем элементов из списка "Проекты". Для обработки этого события нужно переопределить событие ItemDeleting в определении списка. Всякий раз, когда пользователь будет пытаться удалить элемент, он увидит сообщение о невозможности удаления. В следующем примере показано, как переопределить обработчик события ItemDeleting. Этот приемник события будет предотвращать попытки удаления элементов, даже если пользователь имеет право на удаление элементов этого списка.
public override void ItemDeleting(SPItemEventProperties properties)
{
properties.Cancel = true;
properties.ErrorMessage = "Deleting is not supported in this list.";
}
Public Overrides Sub ItemDeleting(ByVal properties As SPItemEventProperties)
properties.Cancel = true
properties.ErrorMessage = "Deleting is not supported in this list."
End Sub
Дополнительные сведения см. в статье Event Fundamentals.
Рабочие процессы
Рабочие процессы позволяют увязать в единое целое отдельные задачи и координировать бизнес-процессы. С помощью ASP.NET разработчик может создать набор веб-форм для ввода данных и инициирования отдельных этапов рабочего процесса. Однако, для автоматизации рабочего процесса потребуется написание значительного объема кода бизнес-логики. К счастью, продукты и технологии SharePoint имеют встроенную поддержку для разработки рабочих процессов.
Windows SharePoint Services 3.0 обеспечивает поддержку создания документно-ориентированных решений рабочих процессов. Рабочие процессы можно связывать со списками, библиотеками документов или типами содержимого. Поскольку данными в рабочих процессах Windows SharePoint Services 3.0 управляют люди, это требует интегрирования в решения рабочих процессов человеческого фактора. Разработчик может определить список лиц, выполняющих и утверждающих задачи в рамках экземпляра рабочего процесса.
Пространство имен Microsoft.SharePoint.Workflow содержит набор классов, интерфейсов и перечислений, которые представляют функциональность рабочих процессов, инкапсулированную в Windows SharePoint Services 3.0.
Решения могут иметь или не иметь формы ввода, позволяющие конечным пользователям взаимодействовать с рабочими процессами. Разработчик может использовать веб-формы ASP.NET для реализации форм рабочего процесса любого из следующих типов.
Форма связи. Позволяет определить имя и данные, связываемые с рабочим процессом при его подключении к библиотеки документов, списку или типу содержимого.
Форма запуска. Позволяет указать сведения для какого-либо элемента нового запускаемого экземпляра рабочего процесса. Эта форма предоставляется конечным пользователям, только когда рабочий процесс запускается вручную.
Формы задач. Позволяют управлять отображением задач, связанных с рабочим процессом, и определять специальную обработку при редактировании конкретной задачи. Этот набор форм реализуется с помощью типов содержимого, что позволяет отображать, редактировать и настраивать новые формы для любого типа содержимого.
Форма изменения. Позволяет управлять состоянием и потоком выполнения рабочего процесса с помощью настраиваемых страниц, которые могут работать с данными, используемыми рабочим процессом.
Форма состояния. Позволяет определить страницу состояния для отображения пользователю при выполнении проверки состояния рабочего процесса. Эта страница может обращаться к другим системам, чтобы учесть в рабочем процессе SharePoint их информацию.
Office SharePoint Server 2007 предоставляет дополнительные расширенные возможности для документно-ориентированных рабочих процессов. Вот некоторые из этих возможностей:
поддержка использования форм InfoPath посредством InfoPath Forms Services для форм любого типа — связи, запуска, задачи, изменения или состояния;
настраиваемые встроенные рабочие процессы для выполнения процедур утверждения и проверки.
Дополнительные сведения см. в статье Рабочие процессы Windows SharePoint Services 3.0 и SharePoint Server 2007: введение для разработчиков.
Для создания решений рабочих процессов можно использовать Visual Studio 2005, Visual Studio 2008 или Office SharePoint Designer 2007.
Office SharePoint Designer 2007 предоставляет поддержку для простых, основанных на правилах, рабочих процессов. Это позволяет определять рабочие процессы без написания кода и упрощает процесс развертывания благодаря автоматическому сохранению макета рабочего процесса, правил и поддерживаемых файлов в указанной библиотеке документов. Можно связать рабочие процессы Office SharePoint Designer 2007 с несколькими библиотеками документов или списками.
Однако, Visual Studio 2005 и Visual Studio 2008 предоставляют набор настраиваемых шаблонов рабочих процессов, которые позволяют воспользоваться более высоким уровнем настройки. Обе среды разработки обеспечивают базовую библиотеку операций, содержащую набор предопределенных операций, которые разработчик может использовать для определения рабочих процессов. Также возможно создание пользовательских операций и повторного использования их в различных решениях рабочих процессов. Например, можно создать пользовательскую операцию для добавления этапов рабочего процесса как задач Microsoft Office Outlook 2007. На рисунке 6 показаны шаблоны последовательного рабочего процесса SharePoint и рабочего процесса конечного автомата SharePoint в Visual Studio 2008.
Рисунок 6. Шаблоны рабочих процессов в Visual Studio 2008
Примечание
Разработанные шаблоны рабочих процессов Visual Studio развертываются посредством компонентов и решений. Эти шаблоны рабочих процессов могут быть повторно использованы в библиотеках одного семейства сайтов, на разных сайтах в одном веб-приложении и даже на разных сайтах в других фермах SharePoint.
Дополнительные сведения см. в статье Решения рабочих процессов SharePoint.
Silverlight в веб-частях
Microsoft Silverlight — подключаемый модуль, независимый от конкретного браузера, платформы или устройства, предваряющий появление следующего поколения платформы .NET Framework, которая будет ориентирована на средства массовой информации в Интернете и интернет-приложения с богатой функциональностью (Rich Internet Applications). Дополнительные сведения см. в статье ASP.NET Silverlight Overview.
Технология Silverlight предлагает улучшенные средства взаимодействия для веб-приложений. По этой причине разработчики .NET заинтересованы в том, чтобы предоставить в новых интернет-решениях поддержку функций и компонентов Silverlight. Разработчики SharePoint также могут воспользоваться в своих решениях преимуществами технологии Silverlight.
С помощью элементов пользовательского интерфейса Silverlight можно расширить возможности взаимодействия с сайтами SharePoint. Разработчик может создавать веб-части, библиотеки документов, библиотеки изображений, инструменты навигации и настраиваемые типы полей, которые обеспечивают поддержку технологии Silverlight на сайтах SharePoint.
Microsoft Silverlight Blueprint for SharePoint предоставляет исходный код и руководство для разработчиков, решающих задачу совместного использования в бизнес-приложениях и веб-сайтах Silverlight и продуктов и технологий Microsoft SharePoint. Эта возможность позволяет, используя последние графические возможности Silverlight, по-новому взглянуть на данные, предоставляемые посредством продуктов и технологий SharePoint. На рисунке 7 приведен пример средства просмотра изображений, созданного на основе технологии Silverlight, размещающегося в веб-части ASP.NET 2.0, которая выполняется на платформе SharePoint.
Рисунок 7. Пример средства просмотра изображений на основе технологии Silverlight
Дополнительные сведения см. на веб-сайте Microsoft Silverlight Blueprint for SharePoint.
Придание страницам фирменного стиля
Windows SharePoint Services 3.0 и Office SharePoint Server 2007 включают набор встроенных шаблонов, главных страниц и каскадных таблиц стилей, которые позволяют настроить внешний вид сайтов SharePoint.
Платформа веб-страниц ASP.NET обеспечивает набор функций, позволяющих создавать, расширять и детализировать внешний вид веб-приложений. К ним относятся:
Главные страницы. Определяйте с помощью главных страниц общий стиль, структуру и элементы интерфейса (описывались выше в этой статье). Используйте главные страницы, чтобы обеспечить согласованный внешний вид разрабатываемых веб-сайтов.
Стили. Определяйте дизайн через таблицы CSS и свойство стиля стандартных тегов HTML, элементов управления HTML и веб-элементов управления.
Темы. Определяйте внешний вид веб-страниц с помощью группы файлов (CSS и изображений), составляющих одну тему.
Поскольку продукты и технологии SharePoint используют ASP.NET 2.0 как платформу и инфраструктуру, для придания сайту SharePoint фирменного стиля можно изменять главные страницы, таблицы CSS и изображения.
В Office SharePoint Server 2007 главные страницы хранятся в коллекции главных страниц. Windows SharePoint Services предоставляет коллекцию главных страниц в виде библиотеки документов, в которой хранятся все существующие определения главных страниц данного семейства веб-сайтов. Разработчик может просматривать содержимое коллекции главных страниц и изменять встроенные шаблоны, создавая собственные главные страницы. На рисунке 8 показан оформленный в фирменном стиле сайт SharePoint, который использует главную страницу.
Рисунок 8. Сайт SharePoint, оформленный в фирменном стиле
Примечание
Файл default.master содержит серверные и пользовательские элементы управления ASP.NET, а также элементы управления SharePoint, например SPWebPartManager, SiteActions, SiteLogoImage и CSSLink.
Дополнительные сведения см. в статье Customizing and Branding Web Content Management-Enabled SharePoint Sites (Part 1 of 3): Understanding Web Content Management and the Default Features.
Перемещение по страницам
ASP.NET 2.0 обеспечивает модель переходов сайта, в которую входит программный интерфейс API переходов, набор поставщиков переходов и серверные элементы управления, позволяющие программно управлять структурой переходов сайта. API переходов сайта содержит класс SiteMapProvider, который можно использовать для хранения навигационных данных. Также разработчик может создать собственный поставщик, унаследовав его от класса SiteMapProvider, для извлечения данных из хранилищ, использующих другие форматы.
Office SharePoint Server 2007 предоставляет класс PortalSiteMapProvider, который наследуется от класса SiteMapProvider. Класс PortalSiteMapProvider входит в пространство имен Microsoft.SharePoint.Publishing и позволяет извлекать данные об иерархии сайтов. Как следствие, разработчик получает расширенные возможности управления перемещением в сайтах SharePoint.
ASP.NET также предоставляет набор элементов управления перемещением, например SiteMapPath, TreeView и Menu. Эти элементы управления обеспечивают возможность графического представления переходов в веб-сайтах. Аналогично, Office SharePoint Server 2007 использует элемент управления Microsoft.SharePoint.WebControls.AspMenu для обеспечения возможности переходов на основе меню. Следуя тем же принципам, что и для веб-сайтов ASP.NET, разработчик может программно настраивать структуру переходов сайтов SharePoint.
Наконец, ASP.NET также предоставляет элементы управления источниками данных, которые позволяют подключить элементы управления перемещением к поставщику навигационных данных. Office SharePoint Server 2007 имеет элемент управления PortalSiteMapDataSource, который позволяет связывать элементы управления перемещением с навигационными данными через атрибут DataSourceID элементов управления перемещением. Поэтому можно использовать элемент управления PortalSiteMapDataSource так же, как и SQLDataSource, XMLDataSource, AccessDataSource или серверный веб-элемент управления ObjectDataSource для привязки навигационных данных к серверным элементам управления, например элементу управления TreeView или Menu .
Главные страницы в продуктах и технологиях SharePoint (например, страница default.master), используются для хранения поставщиков навигационных данных и элементов управления. В следующем примере показана часть содержимого страницы default.master, которая содержит определения навигационных элементов страницы, инкапсулированных в элемент управления asp:ContentPlaceHolder.
<asp:ContentPlaceHolder ID="PlaceHolderHorizontalNav" runat="server">
<sharepoint:aspmenu
id="TopNavigationMenu"
runat="server"
datasourceid="topSiteMap"
enableviewstate="false"
accesskey="<%$Resources:wss,navigation_accesskey%>"
orientation="Horizontal"
staticdisplaylevels="2"
maximumdynamicdisplaylevels="1"
dynamichorizontaloffset="0"
staticpopoutimageurl="/_layouts/images/menudark.gif"
staticpopoutimagetextformatstring=""
dynamichoverstyle-backcolor="#CBE3F0"
skiplinktext=""
staticsubmenuindent="0"
cssclass="ms-topNavContainer">
<StaticMenuStyle/>
<StaticMenuItemStyle CssClass="ms-topnav" ItemSpacing="0px"/>
<StaticSelectedStyle CssClass="ms-topnavselected" />
<StaticHoverStyle CssClass="ms-topNavHover" />
<DynamicMenuStyle BackColor="#F2F3F4" BorderColor="#A7B4CE"
BorderWidth="1px"/>
<DynamicMenuItemStyle CssClass="ms-topNavFlyOuts"/>
<DynamicHoverStyle CssClass="ms-topNavFlyOutsHover"/>
<DynamicSelectedStyle CssClass="ms-topNavFlyOutsSelected"/>
</sharepoint:aspmenu>
<sharepoint:delegatecontrol runat="server"
controlid="TopNavigationDataSource">
<Template_Controls>
<asp:SiteMapDataSource
ShowStartingNode="False"
SiteMapProvider="SPNavigationProvider"
id="topSiteMap"
runat="server"
StartingNodeUrl="sid:1002"/>
</Template_Controls>
</sharepoint:delegatecontrol>
</asp:ContentPlaceHolder>
Дополнительные сведения см. в статье Customizing and Branding Web Content Management-Enabled SharePoint Sites (Part 2 of 3): Extending WCM.
Веб-службы
Веб-службы позволяют веб-приложениям подключаться по сети к другим приложениям, что открывает возможность создания распределенных, сервисно-ориентированных систем. Если ваше приложение ASP.NET уже подключено к нескольким веб-службам, то вы будете приятно удивлены, узнав, что и Windows SharePoint Services, и Office SharePoint Server предлагают широкий набор веб-служб, которые можно использовать для извлечения и конфигурирования данных сайтов SharePoint.
Веб-службы Windows SharePoint Services
Веб-службы Windows SharePoint Services входят в пространство имен Microsoft.SharePoint.SoapServer. Эти веб-службы содержат методы для доступа и настройки таких типов содержимого сайта SharePoint, как списки, данные сайта, формы, собрания, рабочие области для документов и разрешения. На рисунке 9 представлены различные веб-службы Windows SharePoint Services.
Рисунок 9. Веб-службы Windows SharePoint Services
Чтобы в Visual Studio добавить ссылку на веб-службу Windows SharePoint Services, добавьте веб-ссылку, воспользовавшись путем к сайту SharePoint, для которого эта веб-служба является доступной. Например, чтобы подключить веб-службу собраний, необходимо добавить ссылку в следующем формате: http://MyServer/[sites/][MySite/][MySubsite/]_vti_bin/meetings.asmx
.
Дополнительные сведения см. в статье Windows SharePoint Services Web Services.
Веб-службы Office SharePoint Server 2007
Office SharePoint Server 2007 предоставляет веб-службы, обеспечивающие такие функции, как каталог бизнес-данных, система управления документами, корпоративный поиск, службы Excel, InfoPath Forms Services и управление веб-содержимым. Можно использовать одновременно несколько веб-служб для извлечения сведений и конфигурирования сайтов SharePoint. В следующей таблице перечислены наиболее часто используемые веб-службы Office SharePoint Server 2007.
Таблица 1. Часто используемые веб-службы Office SharePoint Server 2007
Веб-служба | Описание | Ссылка |
---|---|---|
Веб-служба службы Excel |
Предоставляет интерфейс веб-служб, позволяющий приложениям обращаться, изменять и вычислять данные в книгах Excel. |
ExcelService.asmx |
Веб-служба InfoPath Forms |
Предоставляет реализацию функций, которые использует InfoPath Forms Services. |
FormsService.asmx |
Веб-служба официального файла |
Предоставляет методы для отправки файлов. |
officialfile.asmx |
Веб-служба опубликованных ссылок |
Предоставляет интерфейс, позволяющий удаленным клиентам читать и создавать опубликованные ссылки. |
PublishedLinksService.asmx |
Веб-служба запросов |
Веб-служба запросов позволяет обращаться к результатам корпоративного поиска из клиентских приложений и веб-приложений вне контекста сайта SharePoint. |
search.asmx |
Веб-служба изменения профиля пользователя |
Предоставляет интерфейс, позволяющий удаленным клиентам читать и создавать профили пользователей. |
UserProfileChangeService.asmx |
Веб-служба профиля пользователя |
Содержит методы для управления профилями пользователей. |
UserProfileService.asmx |
Веб-служба рабочих процессов |
Предоставляет интерфейс, который удаленные клиенты могут использовать для выполнения таких действий, как получение сведений об элементе или задаче рабочего процесса, запуск рабочего процесса, получение шаблонов рабочих процессов. |
workflow.asmx |
Чтобы в Visual Studio добавить ссылку на веб-службу Office SharePoint Server, добавьте веб-ссылку, воспользовавшись путем к сайту SharePoint, для которого эта веб-служба является доступной. Например, чтобы подключить веб-службу поиска, необходимо добавить ссылку в следующем формате: http://MyServer/[sites/][MySite/][MySubsite/]_vti_bin/search.asmx
.
Дополнительные сведения см. в статье Class Library and Web Service Reference.
Настраиваемые типы содержимого
Как объяснялось выше, типы содержимого предназначены для того, чтобы помочь пользователям более структурно организовать содержимое SharePoint. Тип содержимого — это повторно используемая коллекция настроек, которую можно применить к определенной категории содержимого, например документам и папкам. Например, определим тип документа — настраиваемый заказ. Windows SharePoint Services позволяет определить настраиваемые столбцы, чтобы контролировать метаданные и поведение, например рабочий процесс, формы, обработчики событий и информационные политики, специфичные для данного типа документов. Также определим настраиваемый контракт для сторонних продавцов и сохраним его в той же библиотеке документов. Несколько типов содержимого можно сохранять в одной библиотеке документов или списке. На типы содержимого не влияет местоположение списка SharePoint. После определения типа содержимого можно использовать его во всей коллекции сайта. Типы содержимого дают возможность расширить функциональность, позволяя определять дополнительные параметры, настраиваемые рабочие процессы и атрибуты.
Создавать типы содержимого можно тремя способами: с помощью пользовательского интерфейса Office SharePoint Server 2007, используя объектную модель Windows SharePoint Services, или посредством компонента SharePoint. Пространство имен Microsoft.SharePoint содержит класс SPContentType, представляющий тип содержимого сайта или списка, который можно использовать для извлечения информации и работы с типом содержимого программными средствами. В следующем примере показано, как добавить поле Status к существующему типу содержимого Projects.
SPWeb mySite = SPContext.Current.Web;
SPContentType contentType = mySite.ContentTypes["Projects"];
StringCollection values = new StringCollection();
sc.AddRange(new string[]{ "Not Started","On Track","Completed" });
contentType.Fields.Add("Status",SPFieldType.Choice, false, true, values);
contentType.Update();
Dim mySite As SPWeb = SPContext.Current.Web
Dim contentType As SPContentType = mySite.ContentTypes("Projects")
Dim values As StringCollection = New StringCollection
sc.AddRange(New String() {"Not Started", "On Track", "Completed"})
contentType.Fields.Add("Status", SPFieldType.Choice, false, true, values)
contentType.Update
Дополнительные сведения см. в статье Content Types.
Управление пользователями
ASP.NET поддерживает проверку подлинности на основе ролей. Это позволяет программно контролировать различные уровни доступа пользователей к веб-страницам. Например, пусть есть веб-сайт; некоторые его страницы должны быть видимы только менеджерам, другие страницы — только вице-президентам. ASP.NET предоставляет набор различных типов членства и поставщиков диспетчеров ролей, которые позволяют настраивать и управлять авторизацией в приложении.
Аналогично, Office SharePoint Server 2007 позволяет определять настраиваемые профили пользователей и аудитории, что дает возможность управлять авторизацией на сайтах SharePoint. Кроме того, можно использовать профили пользователей и аудитории для распределения информации по страницам содержимого. Например, можно отображать или скрывать веб-части на странице содержимого в зависимости от целевой аудитории. На рисунке 10 показано, как определить целевые аудитории для веб-части на страницах содержимого.
Рисунок 10. Определение целевой аудитории в веб-частях
Профили пользователей
В Office SharePoint Server 2007 данные учетных записей пользователей находятся в хранилище профилей пользователей. Office SharePoint Server 2007 может импортировать сведения о профилях пользователей из Active Directory и контроллеров доменов LDAP. Также Office SharePoint Server 2007 поддерживает импорт информации о профилях пользователей, хранящейся в базах данных или корпоративных приложениях (таких как SAP или Siebel), через каталог бизнес-данных. Можно даже запланировать выполнение добавочного или полного регулярного импорта в хранилище профилей пользователей. Дополнительные сведения см. в статье Importing User Profiles.
После задания источника и заполнения хранилища профилей пользователей можно обращаться и конфигурировать данные о пользователях программными средствами, используя либо классы объектной модели в пространстве имен Microsoft.Office.Server, либо соответствующую веб-службу (см. статью User Profile Web Service).
Аудитории
В Office SharePoint Server 2007 можно определять аудитории и предназначенное для них содержимое на основе правил включения в аудитории, групп SharePoint и присутствия в списке рассылки Microsoft Exchange Server.
Также Office SharePoint Server 2007 предлагает объектную модель целевой аудитории, которая позволяет выполнять распределение содержимого программно. Объектная модель аудиторий реализована в пространстве имен Microsoft.SharePoint.Portal.Audience (см. статью Microsoft.Office.Server.Audience).
Если при создании решений веб-частей реализовать интерфейс IRuntimeFilter2, это позволит управлять тем, какие веб-части будут отображаться во время выполнения. Выбор отображаемых веб-частей выполняется на основе набора произвольных параметров, которые хранятся в свойстве AuthorizationFilter базового класса веб-части.
Дополнительные сведения см. в статье Targeting Content Using Audiences.
Изучение и начало работы с продуктами и технологиями SharePoint
MSDN предоставляет множество ресурсов, которые могут помочь начать разработку решений SharePoint. К ним относятся учебные курсы, курсы онлайнового обучения, пакеты средств разработки программного обеспечения (SDK), файлы для загрузки, технические статьи, веб-сайты сообществ разработчиков, форумы MSDN, планы действий для разработчиков и объявления. SharePoint Server 2007 Developer Portal и SharePoint Developer Center объединяют многие из этих ресурсов. Можно использовать эти веб-сайты как отправную точку для поиска ресурсов разработчика и для того, чтобы узнать, как разрабатывать решения с помощью продуктов и технологий SharePoint. В следующей таблице представлены ссылки на интерактивные и печатные ресурсы, которые могут помочь получить больше сведений о продуктах и технологиях SharePoint.
Таблица 2. Ресурсы по изучению и началу работы с продуктами и технологиями SharePoint
Группа ресурсов | Office SharePoint Server | Windows SharePoint Services |
---|---|---|
Изучение |
||
Ресурсы для начала работы |
||
Интерактивные практические занятия и веб-сайты интерактивного обучения |
||
Пакеты SDK |
Microsoft Office SharePoint Server 2007 SDK |
Windows SharePoint Services 3.0 SDK |
Веб-сайты сообществ разработчиков |
||
Форумы MSDN |
||
Планы действий и объявления |
В ближайшие месяцы будет предложен новый набор интерактивных лабораторных работ и примеров использования, которые помогут получить базовые знания о различных компонентах, входящих в продукты и технологии SharePoint и используемых для создания корпоративных решений. Эти ресурсы будут доступны на веб-сайте http://www.MSSharePointDeveloper.com.
Заключение
Профессиональные разработчики .NET могут получить преимущества от использования продуктов и технологий SharePoint при создании компонентов и корпоративных решений. Windows SharePoint Services 3.0 использует такие возможности платформы ASP.NET 2.0, как главные страницы и настраиваемые веб-части. Кроме того, Windows SharePoint Services обеспечивает собственный логически завершенный набор функций, таких как сервисы для работы с документами, события, рабочие процессы, поиск, столбцы сайта и типы содержимого.
Office SharePoint Server 2007 предоставляет единое интегрированное место, позволяющее сотрудникам эффективно взаимодействовать с членами рабочих групп, выполнять поиск организационных ресурсов, экспертов и корпоративной информации, управлять содержимым и рабочим процессом, а также обеспечивающее получение всей необходимой для принятия бизнес-решений информации.
Опытные разработчики .NET Framework, воспользовавшись встроенными компонентами и функциями продуктов и технологий SharePoint, могут углубить свои знания и создавать корпоративные масштабируемые веб-приложения, обеспечивающие возможность расширения целевой аудитории.
Благодарности
Мы хотим выразить благодарность Karthik Ravindran, Andrew Connell, Robert L. Bogue и Beck Andros за их вклад в подготовку этой статьи.
Дополнительные ресурсы
Для получения дополнительных сведений обратитесь к следующим ресурсам:
Office SharePoinr Server 2007 Class Library and Web Service Reference
Office SharePoint Server 2007 Book Excerpts
Windows SharePoint Services Class Library and Web Service Reference