Прочитать на английском

Поделиться через


Создание решения вручную

Дата последнего изменения: 13 апреля 2011 г.

Применимо к: SharePoint Foundation 2010

В данном разделе приведены базовые сведения о пакетах решений и о создании их вручную.

Важное примечаниеВажно!

В состав Visual Studio входят средства, которые упрощают (и значительно автоматизируют) создание и настройку пакетов решений. Рекомендуется использовать эти средства. В данном разделе приведены только базовые сведения на случай, если вам потребуется изменить файлы, не используя средства Visual Studio, а также для разработчиков, у которых нет Visual Studio.

Пакеты решений

Пакет решения — это CAB-файл с расширением .wsp и файлом манифеста. Он также может содержать следующие компоненты:

  • Определения сайтов (onet.xml, webtemp*.xml и, возможно, default.aspx).

  • Политики безопасности доступа к коду.

  • Изменения в файле web.config.

  • Файлы шаблонов и корневые файлы, которые могут включать следующее:

    • страницы приложений (*.aspx);

    • ресурсы (*.resx);

    • файлы ресурсов (например, *.doc или *.xls);

    • пользовательские элементы управления (*.ascx).

  • Сборки, отличные от SharePoint, такие как библиотеки пользовательских управляемых классов. Их можно развертывать в сочетании со следующими элементами:

    • вхождения безопасных элементов управления;

    • ресурсы.

  • Определения компонентов и соответствующие определения и файлы элементов. В компонент входят следующие элементы:

    • файлы веб-частей (*.webpart, *.dwp);

    • экземпляры и шаблоны списков;

    • типы контента и типы настраиваемых полей;

    • модели BCS/подключения к бизнес-данным;

    • приемники событий;

    • страницы сайтов (*.aspx);

    • сборки для веб-частей или других пользовательских классов SharePoint Foundation, их можно развертывать в сочетании со следующими элементами:

      • вхождения безопасных элементов управления;

      • ресурсы.

Файлы решения имеют иерархическую структуру (с файлом манифеста в корне); каталоги компонентов, ресурсов и определений сайта находятся во вложенных каталогах.

Файлы для конкретного компонента или определения сайта необходимо помещать в соответствующий подкаталог компонента или определения сайта.

ПримечаниеПримечание

Структура каталогов внутри .wsp-файла определяет итоговую структуру каталогов в файловой системе внешнего веб-сервера. Однако структура каталогов в окне Обозреватель решений, создаваемая средствами Visual Studio, обычно не соответствует структуре каталогов интерфейсного веб-сервера.

Чтобы вручную создать пакет решения, выполните следующие действия:

  1. Создайте файл manifest.xml для решения.

    Манифест решения (он всегда называется manifest.xml) хранится в корневом каталоге файла решения. Этот файл определяет список компонентов, определений сайтов, файлов ресурсов, файлов веб-частей и сборок для обработки. Он не определяет структуру файлов; если файлы находятся в решении, но не указаны в файле манифеста, они не обрабатываются.

    Ниже приведена структура файла manifest.xml.

    <Solution SolutionId="4AFC1350-F354-4439-B941-51377E845F2B" xmlns="https://schemas.microsoft.com/sharepoint/">
      <FeatureManifests>
        <FeatureManifest Location="FeatureLibrary\feature.xml"/>
      </FeatureManifests>
      <TemplateFiles>
        <TemplateFile Location="ControlTemplates\Featurelibraryform.ascx"/>
      </TemplateFiles>
      <RootFiles> 
      <!-- These files go into the 12\ directory and can be used for Web services and global resources -->
        <RootFile Location="ISAPI\MyWebService.asmx">
      </RootFiles>
      <Assemblies>
        <Assembly  DeploymentTarget="GlobalAssemblyCache" 
    Location="ms.samples.sharepoint.myFeature.dll"/>
      </Assemblies>
    </Solution>
    

    Кроме того, можно добавить элемент DwpFiles, чтобы указать файлы .webpart или .dwp, или элемент ResourceFiles, чтобы указать файлы ресурсов, определения сайтов, ресурсы приложений и политик разграничения доступа кода.

  2. Если в пакете имеются компоненты, то каждый из них имеет файл feature.xml. Для каждого файла манифеста элемента компонента (elements.xml) в компоненте добавьте тег ElementFile, указывающий на манифест элемента компонента.

  3. Создайте пакет решения — файл .wsp.

    Файл решения по сути представляет собой CAB-файл, поэтому для создания пакета решения следует использовать программу makecab.exe. Программа makecab.exe получает указатель на DDF-файл, который описывает структуру CAB-файла.  Формат DDF-файла похож на формат INF-файлов: объявляется стандартный заголовок, а затем перечисляются (по одному в каждой строке) файлы на диске, которые разделяются по тому, где они должны находиться внутри CAB-файла.

    ;
    .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
    ...
    

См. также

Концепции

Схема Solution

Обзор решений