Базовые элементы разработки: решения
Дата последнего изменения: 22 апреля 2011 г.
Применимо к: SharePoint Foundation 2010
В этой статье
Объектная модель для решений
XML-код, используемый для решений
Области, связанные с решениями
Дополнительные сведения о решениях
Платформа решений Microsoft SharePoint Foundation предоставляет способ объединения расширений для SharePoint Foundation в пакет решений (файл с расширением WSP). Пакет решений сохраняется в CAB-файле с расширением WSP. Он может содержать компоненты, определения сайтов, веб части и сборки. Платформа решений предоставляет унифицированную инфраструктуру для развертывания решений. Платформа решений, используемая с компонентами, предоставляющими функциональность, может быть включена или отключена в заданной области. Платформа также предоставляет механизм, который можно использовать для развертывания и обновления существующих решений для различных серверов в ферме серверов. Решения также могут быть локализованы для поддержки большего диапазона пользователей.
Существует два типа решений — изолированные и решения для фермы.
Решение для песочницы может быть развернуто администратором семейства веб-сайтов в галерее решений семейства веб-сайтов. Решения такого типа имеют доступ к подмножеству серверной объектной модели и выполняются в контексте с уровнем безопасности с ограничениями, в котором обеспечивается изоляция и отслеживание кода решения. Решение для песочницы может быть проверено с помощью средства проверки решений. Администратор фермы может включить или отключить решение для песочницы, а также задать ограничения на использование для защиты серверов в ферме от вредоносного кода.
Примечание Вместо термина "изолированное" иногда используется термин "пользовательское", особенно в объектной модели для системы изолированных решений. Например, пространство имен с основными программными интерфейсами для этой системы — Microsoft.SharePoint.UserCode, а служба, управляющая выполнением изолированных решений, называется SharePoint 2010 User Code Host в диалоговом окне Службы Windows на интерфейсных веб-серверах. Здесь отражено принятое ранее название тех решений, которые теперь называются "изолированными".
Решения для фермы развертываются на интерфейсных веб-серверах администратором фермы. Эти решения имеют полный доступ к объектной модели сервера и на их использование не накладываются ограничения.
Объектная модель для решений
Решения можно администрировать с помощью объектной модели в SharePoint Foundation. Это включает обновление, отзыв и развертывание. Можно также программно через объектную модель задать пределы использования и определить средства проверки для решений для песочницы.
Объектная модель для всех решений
SPSolution представляет решение в ферме серверов.
SPSolutionCollection представляет коллекцию объектов SPSolution.
SPSolutionLanguagePack представляет языковой пакет для решения.
SPSolutionLanguagePackCollection представляет коллекцию объектов SPSolutionLanguagePack.
Объектная модель для изолированных решений
SPUserSolution представляет решение для песочницы.
SPUserSolutionCollection представляет коллекцию объектов SPUserSolution.
SPBlockedSolution представляет заблокированное решение для песочницы.
SPSolutionValidator представляет базовый класс, используемый для создания средства проверки решения для песочницы.
XML-код, используемый для решений
Решение настраивается с помощью манифеста решений с именем файла manifest.xml. Манифест решений сохраняется в корневой папке пакета решений. Этот файл определяет компоненты, определения сайтов, ресурсы и сборки, которые должны быть включены в пакет решений. Файл, не включенный в манифест решений, не будет обработан. Далее приведен возможный пример манифеста решений.
<Solution SolutionId="SolutionGuid" xmlns="https://schemas.microsoft.com/sharepoint/">
<FeatureManifests>
<FeatureManifest Location="FeatureLibrary\feature.xml"/>
</FeatureManifests>
<TemplateFiles>
<TemplateFile Location="ControlTemplates\Template.ascx"/>
</TemplateFiles>
<RootFiles>
<RootFile Location="ISAPI\MyWebService.asmx">
</RootFiles>
<Assemblies>
<Assembly DeploymentTarget="GlobalAssemblyCache" Location="ms.samples.sharepoint.myFeature.dll"/>
</Assemblies>
</Solution>
При создании пакета решений можно также создать DDF-файл, в котором сопоставляется расположение файлов на диске и файлы в пакете решений. Рекомендуется использовать средства разработки SharePoint в Microsoft Visual Studio 2010 для создания решений SharePoint Foundation. Далее приведен возможный пример DDF-файла.
;
.OPTION EXPLICIT ; Generate errors
.Set CabinetNameTemplate=MySolutionFile.wsp
.set DiskDirectoryTemplate=CDROM ; All cabinets go in a single directory
.Set CompressionType=MSZIP;** All files are compressed in cabinet files
.Set UniqueFiles="ON"
.Set Cabinet=on
.Set DiskDirectory1=Package
build\manifest.xml manifest.xml
build\MySolutionFile\feature.xml MySolutionFile\feature.xml
...
Области, связанные с решениями
Базовые элементы разработки: компоненты
Стандартный блок: типы контента