Решения сообщества для SharePoint

Preview:

DESCRIPTION

Описание решений сообщества для SharePoint, а так же анализ и рекомендации по типичным ошибкам в проектах

Citation preview

SharePoint Решения сообщества для

Обзор и рекомендации

Качай

Исправляй

Пользуйся

Баум Виталий Старший SharePoint разработчик Conteq Ltd http://butaji.ru

План доклада

• Обзор доступных решений

• Установка и настройка

• Работа с решениями

Где искать решения?

• Тестирование проектов ISV

• Сообщества разработчиков

Категории решений

• Разработка

• Диагностика

• Тестирование

• Развертывание

• Элементы управления

• Шаблоны узлов

Разработка

Разработка: SPVisualDev

Сайт: http://spvisualdev.codeplex.com/

Преимущества:

• Удаленная разработка

• Несерверная ОСь

• Синхронизация в реальном времени

• Работа с пулом, GAC’ом

• Интеграция с WSPBuilder

Разработка: WSPBuilder

Сайт: http://wspbuilder.codeplex.com/

Преимущества:

• Стандарт прозрачной сборки решений

• Расширения для студии

• Автоматизация сборки

Разработка: Installer

Сайт: http://sharepointinstaller.codeplex.com/

Преимущества:

• Стандарт для упаковки решений

Разработка: U2U CAML

Сайт: http://u2u.be/Res/Tools/CamlQueryBuilder.aspx

Преимущества:

• Составление запросов

• Удаленные и локальные запросы

Разработка: Reflector

Сайт: http://www.red-gate.com/products/reflector/

Преимущества:

• Просмотр реализации

• Опасно для нервной системы

Разработка: CAML.NET

Сайт: http://code.msdn.microsoft.com/camlintellisense/

Преимущества:

• Intellisense для CAML

Разработка: CKS

Сайт: http://cksdev.codeplex.com

Преимущества:

• Аьлянс разработчиков с большим количеством productivity решений

Разработка: Imtech

Сайт: http://blog.mastykarz.nl/tools/

Преимущества:

• Большой набор утилит для разработки

• 2010: Layouts pages, SPMetal

Разработка: WSS3WF

Сайт: http://wss3workflow.codeplex.com/

Преимущества:

• Шаблоны для форм рабочих процессов WSS

Разработка: SPDActivities

Сайт: http://spdactivities.codeplex.com/

Преимущества:

• Отправка письма с вложением

• Запуск другого рабочего процесса

• Раздача прав

• Проверка прав

Диагностика и тестирование

Диагностика: Perfomance

Сайт: http://features.codeplex.com/

Преимущества:

• Настрока web.config (ajax, silverlight)

• Набор masterpage

• Печать листов

• Просмотр логов

Диагностика: FxCop Rules

Сайт: http://sovfxcoprules.codeplex.com/

Преимущества:

• Анализ Best Disposal Practices

• FxCop

• Visual Studio 2008 Team System Development Editions

Диагностика: SPManager

Сайт: http://spm.codeplex.com

Преимущества:

• Исследование объектной модели

• Внесение интерактивных изменений

Элементы управления

Компоненты: SmartTools

Сайт: http://smarttools.codeplex.com/

Преимущества:

• Пример разработки элементов управления

• Autocomplete

• Интеграция с jQuery

Компоненты: iLove SP

Сайт: http://ilovesharepoint.codeplex.com/

Преимущества:

• PowerWebPart

• PowerShell Scripts

• LookupField with picker

Компоненты: lekman

Сайт: http://lekman.codeplex.com/

Преимущества:

• SharePoint Cache Dependencies

• Unit-tests base-class

Компоненты: Discussion

Сайт: http://mossdiscussion.codeplex.com/

Преимущества:

• Поле «обсуждения»

• Социальная активность

Компоненты: ToolBasket

Сайт: http://sptoolbasket.codeplex.com/

Преимущества:

• Поле рейтинга

• Поле подстановки

• Дизайнер форм

Компоненты: jPoint

Сайт: http://jpoint.codeplex.com/

Преимущества:

• Клиентская модель для SharePoint на jQuery

Компоненты: Search

Сайт: http://sct.codeplex.com/

Преимущества:

• Веб-части поиска

Компоненты: CKS

Сайт: http://cks.codeplex.com/

Преимущества:

• Авторизация на формах (FBA)

• Шаблоны UG

• Кастомизация Wiki, Blog, School

Компоненты: PKS

Сайт: http://pks.codeplex.com

Преимущества:

• Работа с аудио

• Видео

• Презентации

• Социализация

Компоненты: RIC

Сайт: http://ric.codeplex.com/

Преимущества:

• Реализация портала на MOSS для академических нужд

• «Социализация»

SPRequest

SPRequest

• Обертка для неуправляемого кода

• Каждый SPSite имеет свой SPRequest

• OWSSVR.DLL (IIS ISAPI)

• /_vti_bin/owssvr.dll

SPRequest

• “Potentially excessive number of SPRequest objects (10) currently unreleased on thread 23. Ensure that this object or its parent (such as an SPWeb or SPSite) is being properly disposed. This object will not be automatically disposed.”

• Не больше 8 SPRequest в потоке

SPRequest

• HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\HeapSettings

• Создать ключ «SPRequestStackTrace» DWORD равным 1

• «LocalSPRequestWarnCount» = 50

Дизайн, уменьшающий количество запросов

Меньшее количество запросов

Web Logic Data

Меньшее количество запросов

public Costumer GetCostumerById(int id)

{

Costumer costumer;

using (SPWeb web = new SPWeb(Url))

{

costumer = web.Lists["Costumers"]

.GetItemById(id).ToCostumer();

}

return costumer;

}

Меньшее количество запросов

public Costumer GetCostumerById(int id, SPWeb web)

{

return web.Lists["Costumers"]

.GetItemById(id).ToCostumer();

}

Меньшее количество запросов

public string Title

{

get

{

return GetCostumerById(id, SPContext.Current.Web);

}

}

Анализ ошибок

Нет магическим значениям

• Item[“Sttatus”] != Item[FieldIds.Status]

• web.Lists[“Costumers”] != web.Lists[Lists.Constumers]

Best Disposal Practices

• http://msdn.microsoft.com/en-us/library/aa973248.aspx

Best Disposal Practices

public SPWeb MyWeb

{

get

{

using (SPWeb web = new SPWeb(Url))

{

return web;

}

}

}

Статическая типизация

Статическая типизация

• Слабая типизация

• Размазанная логика

• Зависимости от объектов

• Большое количество неявных зависимостей и потенциаьлных ошибок

Статическая типизация

• LINQ to SharePoint

• Все ограничения CAML

• Все прежние проблемы

Статическая типизация

• Business Connectivity Services

• Статическая типизация

• Стандартные практики .NET стека

Recommended