Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП / ООП / ры_приложений_полная_книга.pdf
Скачиваний:
500
Добавлен:
18.02.2017
Размер:
7.08 Mб
Скачать

Использование файлов универсального подключения к данным (Universal Data Connection, UDC) обеспечит возможности гибкого управления подключениями к данным и повторного использования.

При настройке состояния сеанса для сервисов форм InfoPath используйте Form View (Представление формы).

Объектная модель SharePoint

SharePoint предлагает объектную модель, которая позволяет создавать код для автоматизации процессов. Например, можно реализовать специальную систему управления версиями документов или собственные политики регистрации изменений. При написании кода с использованием объектной модели SharePoint руководствуйтесь следующими рекомендациями:

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

Правильно выберите подход к кэшированию и избегайте кэширования конфиденциальных или изменяющихся данных. Если необходимо кэширование, загружайте данные объектов SharePoint в DataSet или DataTable. Однако при кэшировании объектов SharePoint необходимо обеспечить синхронизацию и безопасность потоков.

Повышая уровень привилегий, обратите внимание, что только вновь созданным объектам SharePoint будут назначены привилегии с повышенным уровнем.

Веб-части

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

Определите функциональность, которую хотите реализовать в Веб-частях, и источники данных, с которыми будут работать Веб-части. Используйте команды Веб-частей, чтобы пользователи могли выполнять отдельные действия. Собственные свойства распределите по категориям, чтобы отличать их от стандартных свойств Веб-частей.

Для проектирования Веб-частей используйте многослойный подход. Разделение логики представления, бизнес-логики и логики доступа к данным обеспечивает

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

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

Используйте зоны Веб-частей для размещения Веб-частей, управляемых пользователями в процессе выполнения. В случае применения главной страницы ASP.NET, интегрируйте Web Part Manager (Диспетчер Веб-частей) в главные страницы, которые будут использоваться страницами Веб-частей. Избегайте определения атрибутов стилей непосредственно в элементах управления Вебчастей.

Корректно удаляйте объекты SharePoint и неуправляемые ресурсы, создаваемые в Веб-частях.

Рабочий процесс

SharePoint позволяет разработчикам создавать простые рабочие процессы и подключать их к библиотекам документов в SharePoint. Кроме того, есть возможность создавать пользовательские рабочие процессы с помощью SharePoint Designer или Visual Studio. При проектировании рабочих процессов руководствуйтесь следующими рекомендациями:

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

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

SharePoint Designer.

Создавайте собственные рабочие процессы в Visual Studio, если бизнес-требования требуют сложных рабочих процессов или интеграции с LOB-системами. Чтобы расширить возможности информационных работников, создавайте действия рабочего процесса, которые можно зарегистрировать с помощью SharePoint Designer.

Создавая собственные рабочие процессы, правильно выбирайте их тип, соответственно реализуемому сценарию. Можно использовать последовательную модель и модель на основе состояний. Реализуйте расширенный инструментарий отладки в коде.

При отладке собственных рабочих процессов задавайте детальный уровень протоколирования.

При обновлении старых рабочих процессов применяйте контроль версий сборок и изменяйте глобально уникальный идентификатор (Globally Unique Identifier, GUID) решения. Развертывая новые версии, не забывайте о том, как это может повлиять на выполняющиеся текущие экземпляры рабочих процессов.

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

Для удобства обслуживания ассоциируйте рабочие процессы с определенным типом содержимого. Это позволит использовать рабочий процесс в разных библиотеках содержимого, но обслуживание рабочего процесса будет выполняться только в одном месте (эта функциональность доступна для стандартных рабочих процессов и рабочих процессов Visual Studio, но не для рабочих процессов, созданных в SharePoint Designer). Имейте в виду, что для элемента списка может выполняться только один экземпляр рабочего процесса одного типа; экземпляры рабочих процессов запускаются только для элементов списка, но не для самого списка.

Вопросы выбора технологий

Следующие рекомендации помогут правильно выбрать технологию реализации рабочего процесса SharePoint. Предлагаем также руководство по созданию Веб-частей для пользовательских интерфейсов SharePoint:

Используйте WF, если требуется создавать надежные рабочие процессы с автоматической поддержкой безопасности, обеспечивающие обмен данными с использованием транзакций, широкий выбор вариантов передачи данных и кодирования, встроенное хранение и отслеживание действий.

Используйте BizTalk Server, если требуется создавать рабочие процессы, реализующие сложную оркестровку и обеспечивающие надежное хранение и пересылку сообщений.

Используйте Microsoft BizTalk ESB Toolkit, если требуется обеспечивать взаимодействие с не-Microsoft системами, осуществлять электронный обмен данными (Electronic Data Interchange, EDI) или реализовывать шаблоны сервисной шины предприятия (Enterprise Service Bus, ESB).

Используйте MOSS, если бизнес-уровень включает единственный сайт SharePoint и не требует реализации доступа к данным других сайтов. MOSS не подходит для сценариев с несколькими сайтами.

Если нет необходимости в обеспечении обратной совместимости с SharePoint 2003, создавайте Веб-части ASP.NET путем наследования от класса

System.Web.UI.WebControls.WebParts.WebPart. Когда требуется поддерживать

SharePoint 2003, реализуйте наследование от класса

Microsoft.SharePoint.WebPartPages.WebPart.

Принципы развертывания

Большая часть функциональности LOB-приложений SharePoint обеспечивается стандартными функциями SharePoint. Что касается дополнительных артефактов, таких как компоненты, они должны развертываться таким образом, чтобы обеспечить возможность SharePoint доступа и работы с ними. При проектировании стратегии развертывания LOB-приложений SharePoint руководствуйтесь следующими рекомендациями:

Определите область действия своих функций: ферма, Веб-приложение, семейство сайтов или один сайт.

Организовывайте собственные функции в решения.

Развертывайте свои сборки в папку BIN, а не в глобальный кэш сборок, чтобы использовать преимущества низкоуровневого механизма обеспечения безопасности доступа к коду.

После развертывания протестируйте решение, используя учетную запись без прав администратора.

Шаблоны проектирования

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

Категория Шаблоны проектирования

Рабочие Data-driven workflow. Рабочий процесс, последовательность задач которого процессы определяется значениями данных рабочего процесса или системы.

Human workflow. Рабочий процесс, задачи которого выполняются вручную пользователями.

Sequential workflow. Рабочий процесс, задачи которого выполняются последовательно, когда выполнение каждой последующей задачи начинается лишь после завершения предыдущей.

State-driven workflow. Рабочий процесс, последовательность задач которого определяется состоянием системы.

Более подробно шаблоны Data-Driven Workflow, Human Workflow, Sequential Workflow и StateDriven Workflow рассматриваются в следующих материалах:

«Windows Workflow Foundation Overview» по адресу http://msdn.microsoft.com/enus/library/ms734631.aspx.

«Workflow Patterns» по адресу http://www.workflowpatterns.com/.

Соседние файлы в папке ООП