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


Обновление компонентов сайта с надстройкой в SharePoint

Требования для обновления компонентов сайта надстройки:

Обновление компонентов SharePoint на сайте надстройки

Все элементы SharePoint, развернутые на сайте надстройки, содержатся в веб-компонентах в пакете надстройки. Поэтому для обновления этих элементов необходимо обновить один или несколько компонентов. Этот процесс не изменился со времени выпуска SharePoint 2010 и описан в статье Добавление элементов к существующему компоненту в пакете SDK для SharePoint 2010.

Также могут пригодиться и другие статьи, указанные в узле Обновление компонентов, но учтите, что надстройки не должны включать пользовательский код на сервере SharePoint, поэтому некоторые аспекты обновления компонентов в SharePoint 2010 не относятся к обновлению надстроек. Например, вам не удастся использовать элемент CustomUpgradeAction при обновлении компонента надстройки SharePoint.

Действия, которые можно и которые нельзя выполнить декларативно

Чтобы обновить надстройку, размещенную в SharePoint, можно использовать только разметку XML. При этом возможности декларативного изменения надстройки будут ограничены. Для надстройки с размещением у поставщика можно реализовать обработчик UpdatedEventEndpoint, чтобы выполнить действия, которые нельзя сделать декларативно.

Вы можете с легкостью добавлять компоненты в надстройку. Любой компонент, который можно включить в надстройку, можно также добавить в обновление. (Дополнительные сведения см. в разделе Типы компонентов SharePoint, встречающиеся в надстройке SharePoint.) Но если вы хотите изменить существующий компонент декларативно, учтите вот какие сведения.

  • Тип данных поля (столбца) списка или типа контента в любом случае нельзя изменить после первоначального развертывания. В частности, не меняйте тип данных поля при обновлении надстройки (даже программно). В качестве альтернативного решения вы можете добавить новое поле. Если надстройка содержит пользовательские формы для создания, редактирования или просмотра элементов, обязательно внесите в них соответствующие изменения. Например, добавьте элемент пользовательского интерфейса для нового поля и удалите его для старого. (В надстройке с размещением у поставщика можно программно переместить данные из старого поля в новое, а затем удалить старое.)

  • Вам не удастся удалить списки, экземпляры списков, типы контента или поля в разметке обновления.

  • Файлы невозможно удалить с сайта надстройки в разметке обновления. Но вы можете изменить содержимое любого файла.

  • Элементы CustomUpgradeAction и MapFile невозможно использовать при обновлении надстройки SharePoint, хотя они могут быть доступными в IntelliSense для Visual Studio.

Первое обновление сайта надстройки

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

Инструменты разработчика Microsoft Office для Visual Studio ориентированы на создание надстроек, поэтому стандартное поведение этих средств не всегда оптимально при обновлении надстройки. Для большего контроля над процессом сначала отключите конструктор компонентов, выполнив описанные ниже действия, чтобы непосредственно изменять неотформатированный XML компонента.

Изменение XML компонента

  1. В обозревателе решений откройте файл {ИмяКомпонента}.features. Он откроется в конструкторе компонентов.

  2. Откройте вкладку Манифест и разверните пункт Параметры правки.

  3. Выберите Перезаписать созданный XML и редактировать манифест в редакторе XML.

  4. Когда отобразится соответствующий запрос, нажмите кнопку Да, чтобы отключить конструктор.

  5. В открывшемся представлении выберите пункт Редактирование манифеста в XML-редакторе. Откроется файл {ИмяКомпонента}.Template.xml.

Рис. 1. Открытие редактора XML компонентов

Этапы открытия редактора компонента XML

Осторожностью

Не добавляйте комментарии "<!-- -->" в файл {ИмяКомпонента}.features. Комментарии не поддерживаются инфраструктурой обновления, и вам не удастся выполнить обновление, если в файле есть комментарии. Комментарии используются в примерах разметки в этой статье, только чтобы показать вам, куда следует поместить разметку.

Первое обновление компонента сайта надстройки

  1. Увеличьте на единицу значение атрибута Version (Версия) для элемента Feature (Компонент), если пакет "Инструменты разработчика Office для Visual Studio" еще не сделал это при увеличении номера версии в манифесте надстройки. (Данный пакет делает это не в каждом сценарии, поэтому необходимо выполнять соответствующую проверку.)

    Следует использовать тот же номер версии, что и для надстройки. Вам даже следует рассмотреть вопрос об увеличении версии компонента при обновлении других компонентов надстройки, но не самого компонента сайта надстройки. Логикой элемента VersionRange (который рассматривается в разделе Последующие обновления сайта надстройки) легче управлять, если версии надстройки и компонента всегда одинаковы.

  2. Никогда и ничего не удаляйте в разделе ElementManifests файла.

  3. Добавьте вот какие элементы в файл (если они еще не добавлены):

    • Дочерний элемент UpgradeActions в элемент Feature. Не добавляйте в элемент атрибуты ReceiverAssembly или ReceiverClass. Они не используются при обновлении надстройки SharePoint. (Эти атрибуты ссылаются на пользовательскую сборку, которая не поддерживается в надстройках SharePoint. Если вы включите пользовательскую сборку в надстройку, она не будет установлена в SharePoint.)

    • Дочерний элемент VersionRange в элемент UpgradedActions. Не добавляйте атрибуты BeginVersion или EndVersion в элемент. Это бесполезно, когда надстройка обновляется впервые. Их использование обсуждается в разделе Последующие обновления сайта надстройки.

    • Дочерний элемент ApplyElementManifests в элемент VersionRange.

Сейчас файл должен выглядеть приблизительно так:

Важно!

Возможно, в качестве примера пакет "Инструменты разработчика Office для Visual Studio" уже добавил указанную выше разметку и скопировал некоторые элементы из раздела ElementManifests в раздел ApplyElementManifests. Удалите их. Не исключено, что вам придется в дальнейшем возвращать некоторые из них обратно. Но намного легче и безопаснее начать работу с пустого раздела ApplyElementManifests. Лишние записи для компонентов, которые не изменялись, могут иметь плохие последствия. Например, длительность процесса обновления может увеличиться настолько, что будет превышено время ожидания и обновление завершится ошибкой.

 <Feature <!-- Some attributes omitted --> 
                Version="2.0.0.0">
   <ElementManifests>
     <!-- ElementManifest elements omitted -->
   </ElementManifests>
   <UpgradeActions>
    <VersionRange>
      <ApplyElementManifests>

      </ApplyElementManifests>
    </VersionRange>
   </UpgradeActions>
 </Feature>

Добавление элементов в надстройку

  1. Добавьте все новые элементы в компонент точно так же, как при создании проекта надстройки SharePoint.

  2. Когда вы добавляете компонент типа, который отсутствовал в предыдущей версии надстройки (например, добавляете в надстройку список, которого раньше не было), пакет "Инструменты разработчика Office для Visual Studio" добавляет файл elements.xml в проект. Это манифест элементов для компонента. К этому файлу следует добавить номер новой версии надстройки (например, elements.2.0.0.0.xml). Это может пригодиться при устранении неполадок. Обязательно внесите изменения в обозревателе решений, чтобы соответствующим образом изменить ссылки на файл (например, в CSPROJ-файле и XML компонента).

  3. Для каждого нового манифеста элементов добавьте дочерний элемент ElementManifest в элементы ElementManifests и ApplyElementManifests в XML компонента (тот же элемент ElementManifest в обоих случаях). Атрибут Location элемента должен указывать на относительный путь к файлу elements.2.0.0.0.xml. Например, если вы добавили список с именем MyCustomList, элемент ElementManifest будет выглядеть вот так:

      <ElementManifest Location="MyCustomList\elements.2.0.0.0.xml" />
    
  4. Некоторые виды компонентов добавляют файлы к проекту. Например, при добавлении списка создается файл schema.xml. Когда вы добавляете страницу, создается файл подкачки. Добавьте дочерний элемент ElementFile в элемент ElementManifests для каждого такого файла (не добавляйте его в элемент ApplyElementManifests). Атрибут Location должен указывать на относительный путь к файлу. Например, если вы добавили список, элемент ElementFile файла schema.xml будет выглядеть вот так:

      <ElementFile Location="MyCustomList\Schema.xml" />
    
  5. Если добавить другой элемент типа, который уже использовался в предыдущей версии надстройки, пакет "Инструменты разработчика Office для Visual Studio" может добавить ссылку на новый элемент в существующий манифест элементов, а не создавать новый. Например, чтобы добавить страницу на сайт надстройки, обычно нужно щелкнуть правой кнопкой мыши узел Страницы в обозревателе решений, а затем последовательно выбрать пункты Добавить>Новый элемент>Страница>Добавить. Вместо того чтобы создавать новый манифест элементов, пакет "Инструменты разработчика Office для Visual Studio" добавит новый элемент File (Файл) в модуль Pages (Страницы) в существующий файл манифеста элементов (обычно он называется elements.xml).

    Это нежелательное действие. По возможности не изменяйте существующие файлы манифеста элементов для предыдущих версий надстройки при ее обновлении. Как правило, новые элементы должны находиться в новых файлах манифеста элементов (на которые ссылается элемент ApplyElementManifests XML компонента). (Есть несколько исключений, они описаны ниже.) Например, чтобы добавить новую страницу, выполните следующие действия:

    1. Создайте модуль с именем Pages.2.0.0.0.

    2. Удалите из него файл sample.txt, который Инструменты разработчика Office для Visual Studio добавили автоматически.

    3. Переименуйте манифесты элементов в новом модуле на elements.2.0.0.0.xml.

    4. Щелкните правой кнопкой мыши модуль Pages.2.0.0.0 и последовательно выберите пункты Добавить>Новый элемент>Страница>Добавить. Будет создана страница, на которую будет ссылаться манифест элементов для модуля Pages.2.0.0.0, а не Pages.

    5. Убедитесь, что элемент ElementManifests XML компонента имеет элемент ElementsFile для новой страницы, а также что существует элемент ElementManifest для файла elements.2.0.0.0.xml в разделах ElementManifests и ApplyElementManifests.

      В любой ситуации, когда пакет "Инструменты разработчика Office для Visual Studio" изменил существующий манифест элементов, можно использовать еще один вариант: вручную создать файл elements.2.0.0.0.xml и переместить в него разметку, добавленную в старый манифест. (При желании вы можете поместить новый манифест в тот же узел в обозревателе решений, в котором находится старый манифест.)

  6. Если вы добавляете поле в тип контента компонента, добавьте элемент AddContentTypeField в раздел VersionRange. Убедитесь, что вы присвоили правильные значения атрибутам ContentTypeId и FieldId. С помощью атрибута PushDown укажите, будет ли добавлено новое поле в какой-либо производный тип контента (необязательно). Ниже приведен пример.

     <VersionRange>
       <AddContentTypeField 
         ContentTypeId="0x0101000728167cd9c94899925ba69c4af6743e"
         FieldId="{CCDD361F-A3FB-40D8-A272-3A3C858F4116}"
         PushDown="TRUE" />
       <!-- Other child elements of VersionRange -->
     </VersionRange>
    

Изменение существующих компонентов надстройки

Если вы изменили файл, на который имеется ссылка в файле манифеста элементов (например, файл Default.aspx), вам вообще не нужно изменять элемент ElementFile для файла. Тем не менее необходимо сообщить инфраструктуре обновления, что старую версию файла следует заменить на новую. Это можно сделать, добавив элемент ElementManifest для модуля в раздел ApplyElementManifests.

Так как в разделе ElementManifests уже есть такой элемент, иногда можно просто скопировать (а не переместить) его в ApplyElementManifests. Делайте это, только если изменены все файлы, на которые ссылается манифест. Обычно неизмененный файл не следует заменять его копией, так как в ряде сценариев это может иметь плохие последствия. Например, если страница настроена так, что пользователи могут изменять ее, то замена может привести к удалению внесенных изменений. (Если вы изменили страницу, вам придется учитывать эти последствия, но не нужно без веской причины доставлять неудобства пользователям.)

  1. Чтобы удостовериться, что заменены только измененные файлы модуля, создайте еще один манифест элементов для модуля, который будет ссылаться только на измененные файлы, и примените второй манифест в ApplyElementManifests. Для этого сделайте вот что:

    1. Щелкните правой кнопкой мыши узел модуля в обозревателе решений и добавьте XML-файл (не страницу) с именем elements.2.0.0.0.xml.

    2. Выберите новый файл в области Обозреватель решений, чтобы его область свойств стала видимой, и измените свойство Deployment Type на ElementManifest. Обязательно сделайте это, чтобы удостовериться, что Инструменты разработчика Office для Visual Studio обрабатывают файл должным образом.

    3. Скопируйте содержимое исходного манифеста в новый и удалите из нового манифеста все элементы меню Файл, соответствующие неизмененным файлам.

    4. Добавьте элемент ElementManifest в раздел ApplyElementManifests, который ссылается на новый файл манифеста, как в примере ниже.

            <ElementManifest Location="Pages\elements.2.0.0.0.xml" />
      

      Примечание.

      Не удаляйте исходный манифест. В XML компонента используются как старый, так и новый манифесты. Не копируйте никаких элементов ElementFile из раздела ElementManifests в раздел ApplyElementManifests, даже если файл, на который имеются ссылки в ElementFile, был изменен.

  2. Откройте каждый файл манифеста элементов, на который указывают ссылки в разделе ApplyElementManifests, и удостоверьтесь, что у всех элементов File (Файл) есть атрибут ReplaceContents со значением TRUE (Истина).

    Ниже приведен пример. Возможно, это уже сделано с помощью пакета "Инструменты разработчика Office для Visual Studio", но вам следует убедиться в этом. Проверьте даже манифесты элементов для предыдущих версий надстройки. Это один из рекомендуемых способов изменить существующий файл манифеста элементов.

     <Module Name="Pages">
       <File Path="Pages\Default.aspx" Url="Pages/Default.aspx" ReplaceContent="TRUE" />
     </Module>
    
  3. В страницы могут быть встроены веб-части, как описано в статье Включение веб-части в веб-страницу сайта надстройки. Если вы изменяете страницу со встроенной веб-частью (или изменяете свойства веб-части), потребуется выполнить дополнительное действие: добавить на страницу указанную ниже разметку, чтобы служба SharePoint не добавила вторую копию веб-части на страницу. Разметку необходимо добавить к элементу asp:Content с идентификатором PlaceHolderAdditionalPageHead. (Возможно, при создании страницы пакет "Инструменты разработчика Office для Visual Studio" уже добавил ее, но вам нужно убедиться в этом.)

      <meta name="WebPartPageExpansion" content="full" />
    

    Примечание.

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

  4. Вместо того чтобы изменять страницу, вы можете использовать перенаправление на новую страницу. Для этого сделайте вот что:

    1. Создайте страницу и настройте для нее разметку обновления, как описано выше в разделе Добавление компонентов в надстройку.

    2. Откройте старую страницу и удалите всю разметку из элемента asp:Content с идентификатором PlaceHolderAdditionalPageHead.

    3. Добавьте указанную ниже разметку в элемент asp:Content и замените путь {RelativePathToNewPageFile} на новый путь и имя файла. Этот сценарий перенаправит браузер на новую страницу и укажет параметры запроса. Кроме того, он исключит старую страницу из истории браузера.

       <script type="text/javascript">
             var queryString = window.location.search.substring(1);
             window.location.replace("{RelativePathToNewPageFile}" + "?" + queryString);
       </script>
      
    4. Удалите все остальные элементы asp:Content на странице.

    5. Если вы заменяете начальную страницу надстройки, то измените элемент StartPage манифеста надстройки так, чтобы он указывал на новую страницу.

  5. Если сайт надстройки содержит компонент CustomAction или ClientWebPart, и вы изменяете его при обновлении, тогда вам потребуется изменить манифест элементов, так как в нем определены эти компоненты. (Это исключение из общего правила, которое не разрешает изменять манифест элементов предыдущей версии надстройки при ее обновлении.) Кроме того, необходимо скопировать (не переместить) элемент ElementManifest из раздела ElementManifests в раздел ApplyElementManifests.

Пример XML компонента для первого обновления надстройки

Ниже приведен пример полного файла {ИмяКомпонента}.Template.xml для первого обновления надстройки. В этом примере обновленная надстройка включает измененный файл Default.aspx, на который имеются ссылки в файле Pages\Elements.xml, и она развертывает три новых файла jQuery, на каждый из которых есть ссылка в файлеScripts\Elements.xml. Обратите внимание, что все экземпляры ElementFile перемещаются в раздел ElementManifests. Кроме того, обратите внимание, каким образом выполняется копирование (не перенос) <ElementManifest Location="Pages\Elements.xml" /> из раздела ElementManifests в раздел ApplyElementManifests.

 <Feature xmlns="http://schemas.microsoft.com/sharepoint/" Title="MyApp Feature1" 
       Description="SharePoint Add-in Feature" Id="85d309a8-107e-4a7d-b3a2-51341d3b11ff" 
       Scope="Web" Version="2.0.0.0">
   <ElementManifests>
     <ElementFile Location="Pages\Default.aspx" />
     <ElementManifest Location="Pages\Elements.xml" />
     <ElementFile Location="Content\App.css" />
     <ElementManifest Location="Content\Elements.xml" />
     <ElementFile Location="Images\AppIcon.png" />
     <ElementManifest Location="Images\Elements.xml" />
     <ElementFile Location="Scripts\jquery-3.0.0.intellisense.js" />
     <ElementFile Location="Scripts\jquery-3.0.0.js" />
     <ElementFile Location="Scripts\jquery-3.0.0.min.js" />
   </ElementManifests> 
   <UpgradeActions>
       <VersionRange>      
         <ApplyElementManifests>
           <ElementManifest Location="Pages\Elements.xml" />
           <ElementManifest Location="Scripts\elements.2.0.0.0.xml" />
         </ApplyElementManifests>
       </VersionRange>
   </UpgradeActions>
 </Feature>

Последующие обновления сайта надстройки

Когда вы обновляете надстройку SharePoint во второй (или третий и т. д.) раз, следует учитывать, что некоторые из ваших клиентов, возможно, не установили предыдущие обновления. Таким образом, если пользователь отвечает на сообщение "доступно обновление" после развертывания вашего последнего обновления в каталоге надстроек организации или в Магазине Office, экземпляр надстройки пользователя можно обновить с использованием нескольких версий в рамках единого процесса обновления.

По большей части это именно то, что нужно: обновить каждую более раннюю версию надстройки до последней версии. Тем не менее не всегда нужно, чтобы каждое действие обновления компонента сайта надстройки повторялось для каждого экземпляра надстройки. Существует ряд действий обновления, которые не должны происходить несколько раз в конкретном экземпляре надстройки. Например, если вы добавляете поле к типу контента в одном обновлении, вам не нужно добавлять его снова в следующем обновлении. В процедуре ниже показано, как с помощью элемента VersionRange управлять действиями обновления в зависимости от версии обновляемого компонента.

Изменение компонента сайта надстройки в более поздних обновлениях

  1. Откройте файл ИмяКомпонента.Template.xml для редактирования, как описано в разделе Изменение XML компонента ранее в этой статье, и увеличьте на единицу значение атрибута Version (Версия) элемента Feature (Компонент). Для компонента следует использовать тот же номер версии, что и для надстройки.

    В рамках данного примера предположим, что вы ранее обновили надстройку с версии 1.0.0.0 до версии 2.0.0.0 и теперь обновляете ее до версии 3.0.0.0. Для этого присвойте атрибуту Version (Версия) значение 3.0.0.0.

  2. Добавьте новый элемент VersionRange под всеми существующими элементами VersionRange. Не добавляйте атрибут BeginVersion или EndVersion в этот элемент.

  3. Присвойте элементу VersionRange необходимое значение, как описано в разделе Первое обновление компонента сайта надстройки этой статьи, чтобы учесть изменения обновленной версии компонента. При этом считайте, что используется не раздел ApplyElementManifests, а дочерний элемент ApplyElementManifests недавно добавленного элемента VersionRange, то есть самый нижний элемент в XML-файле компонента.

  4. Перейдите к предыдущему элементу VersionRange, который вы добавили при последнем обновлении надстройки (с версии 1.0.0.0 до версии 2.0.0.0 в этом примере). Добавьте к этому элементу атрибут EndVersion. Вам нужно, чтобы обновления в этом элементе VersionRange можно было применить к любым версиям надстройки, к которым они еще не применены (версия 1.0.0.0). При этом важно не применять такие обновления повторно к версиям, к которым они уже применены (версия 2.0.0.0). Значение EndVersion — исключительное, поэтому задайте его для самой ранней версии, к которой вы не хотите применять обновления. В этом примере вы зададите для данного параметра значение 2.0.0.0. Теперь ваш файл должен выглядеть приблизительно так:

    <Feature <!-- Some attributes omitted --> 
                   Version="3.0.0.0">
      <ElementManifests>
        <!-- ElementManifest elements omitted -->
      </ElementManifests>
      <UpgradeActions>
        <VersionRange EndVersion="2.0.0.0">
          <!--  Child elements for upgrade from 1.0.0.0 to 2.0.0.0 go here. -->
        </VersionRange>
        <VersionRange>
          <!--  Child elements for upgrade from 2.0.0.0 to 3.0.0.0 go here. -->
        </VersionRange>
      </UpgradeActions>
    </Feature>
    

    При каждом обновлении компонента придерживайтесь одной процедуры. Добавьте новый элемент VersionRange для последних действий обновления. Добавьте элемент EndVersion в предыдущий элемент VersionRange и задайте для него номер предыдущей версии. В этом примере при обновлении с версии 3.0.0.0 до версии 4.0.0.0 файл должен выглядеть приблизительно так:

    <Feature <!-- Some attributes omitted --> 
                    Version="4.0.0.0">
      <ElementManifests>
        <!-- Child elements omitted -->
      </ElementManifests>
      <UpgradeActions>
        <VersionRange EndVersion="2.0.0.0">
            <!-- Child elements for upgrade from 1.0.0.0 to 2.0.0.0 go here. -->
        </VersionRange>
        <VersionRange EndVersion="3.0.0.0">
            <!-- Child elements for upgrade from 2.0.0.0 to 3.0.0.0 go here. -->
        </VersionRange>
        <VersionRange>
            <!-- Child elements for upgrade from 3.0.0.0 to 4.0.0.0 go here. -->
        </VersionRange>
      </UpgradeActions>
    </Feature>
    

    Обратите внимание, что самый последний элемент VersionRange не имеет атрибутов BeginVersion или EndVersion. Это гарантирует, что действия обновления, проходящие в этом элементе VersionRange, применяются ко всем предыдущим версиям компонента, который является тем, который вам нужен, потому что все самые последние изменения имеют ссылки в этом элементе VersionRange и ни одно из них еще не произошло для любого из экземпляров компонента.

    Также обратите внимание, что атрибут BeginVersion не используется ни в одном экземпляре элемента VersionRange. Это происходит потому, что значение по умолчанию для атрибута BeginVersion — 0.0.0.0. Это необходимое вам значение, так как все действия обновления необходимо применить к каждому экземпляру надстройки, имеющему более раннюю версию, чем указанную в атрибуте EndVersion.

    Важно!

    Элемент VersionRange определяет только то, к каким версиям компонента применяются обновления. Он не определяет, для каких версий надстройки отображается уведомление о доступности обновления (отправляется только уведомление о номере версии надстройки). Если в каталоге надстроек организации или в Магазине Office доступна новая версия надстройки, то в течение 24 часов на плитке каждого установленного экземпляра надстройки (независимо от версии) на странице Контент сайта отображается уведомление о доступности обновления. Элемент VersionRange не влияет на новый номер версии недавно обновленного компонента или надстройки. Эти два номера всегда изменяются на номер последней версии независимо от того, в какой диапазон версий входил компонент до обновления.

    Это еще одна веская причина не использовать атрибут BeginVersion. С помощью атрибута BeginVersion можно заблокировать некоторые действия обновления для определенных экземпляров надстройки. Однако этот атрибут не позволяет заблокировать обновление версий компонента или надстройки до последней версии. Поэтому использование атрибута BeginVersion может привести к ситуации, в которой два экземпляра надстройки могут иметь одинаковые номера версий надстройки и компонента ее сайта, но включать разные компоненты на сайтах надстройки.

Проверка развертывания компонентов сайта надстройки

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

Проверка подготовки сайта надстройки

  1. Откройте страницу Параметры сайта на хост-сайте. В разделе Администрирование семейства веб-сайтов выберите ссылку Иерархия сайтов.

  2. На странице Иерархия сайтов в списке URL-адресов вы увидите свой сайт надстройки. Не запускайте его. Вместо этого скопируйте URL-адрес и используйте его при выполнении оставшихся шагов.

  3. Перейдите по URL_of_app_web/_layouts/15/ManageFeatures.aspx и на открывающейся странице Компоненты сайта убедитесь, что компонент является членом алфавитного списка компонентов и что его состояние активно.

  4. Если веб-компонент надстройки включает настраиваемые столбцы сайта, откройте URL_of_app_web/_layouts/15/mngfield.aspx и на открывающейся странице Столбцы сайта убедитесь, что указаны новые столбцы настраиваемого сайта.

  5. Если веб-компонент надстройки включает какие-либо настраиваемые типы контента, откройте URL_of_app_web/_layouts/15/mngctype.aspx и на открывающейся странице Типы контента сайта убедитесь, что указаны новые типы контента.

  6. Для каждого пользовательского типа контента и каждого типа контента, в который вы добавили столбец, щелкните ссылку для данного типа. На открывшейся странице Тип контента сайта убедитесь, что в типе контента есть необходимые столбцы сайта.

  7. Если веб-компонент надстройки включает какие-либо экземпляры списка, откройте URL_of_app_web/_layouts/15/mcontent.aspx и на открывающейся странице Библиотеки и списки сайта убедитесь, что для каждого экземпляра настраиваемого списка есть ссылка Настройка name_of_list .

  8. Для каждого из этих пользовательских экземпляров списка выберите ссылку Настроить "имя_списка" и на странице параметров списка убедитесь, что в списке есть необходимые типы контента и столбцы.

    Примечание.

    Если на странице нет раздела Типы контента, необходимо включить управление типами контента. Щелкните ссылку Дополнительные параметры и на странице дополнительных параметров включите управление типами контента, а затем нажмите кнопку OK. Вы вернетесь на предыдущую страницу, на которой теперь будет отображаться список раздела Типы контента.

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

Дальнейшие действия

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

См. также