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


Обновление типов контента

Дата последнего изменения: 1 декабря 2010 г.

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

В этой статье
Подходы к обновлению типов контента
Сохранение обновлений типов контента
Обновление запечатанных типов контента

Доступно на сайте SharePoint Online

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

Подходы к обновлению типов контента

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

  • Подход 1. Внесите необходимые изменения в тип контента, а затем распространите эти изменения на все дочерние типы контента.

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

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

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

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

  • Подход 2. Создайте новый тип контента с необходимыми изменениями, разверните его там, где существует предыдущий тип контента, а затем добавьте предыдущий тип контента в группу _Hidden.

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

    Например, предположим, что имеется тип контента для спецификаций продуктов с именем ProductSpec, который использовался в организации несколько лет. Теперь требования, которые отслеживались в спецификации продуктов, изменились. Необходимо создать тип контента, который будет учитывать эти новые требования, но для учета прошлых данных необходимо сохранить существующий тип контента ProductSpec, который на протяжении многих лет был назначен множеству элементов. В таком случае можно создать новый тип контента, ProductSpec2007, на основе существующего типа контента ProductSpec. После упаковки типа контента ProductSpec2007 в виде компонента можно написать код для его установки и активации в семействе веб-сайтов и добавить тип контента ProductSpec2007 в каждый сайт и список, в которые уже был добавлен тип контента ProductSpec. Наконец, можно написать код для установки свойства Hidden типа контента ProductSpecв значение true. Теперь, когда пользователи будут приходить на сайт для создания спецификации продукта, они смогут выбрать тип контента ProductSpec2007; тип ProductSpec в списке будет отсутствовать. Однако тип контента ProductSpec останется на сайтах и списках, в которые он был добавлен, а элементы, которым он был назначен, останутся неизмененными.

    Скрытые типы контента не отображаются в меню Создать для представлений списков. Таким образом, пользователи не могут создавать элементы такого типа контента из списка. Дополнительные сведения см. в статье Управление доступом к типам контента.

Сохранение обновлений типов контента

SharePoint Foundation никогда не записывает изменения, внесенные в тип контента, обратно в файл определения типа контента. Вместо этого эти изменения сохраняются как записи в базе данных SharePoint Foundation.

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

Дополнительные сведения о файле определений типов контента см. в статье Определения типов контента.

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

Ни при каких условиях не следует обновлять файл определения типа контента для типа контента после того, как этот тип был установлен и активирован. SharePoint Foundation не отслеживает все изменения, внесенные в файл определения типа контента. Следовательно, нет надежного способа распространения всех изменений типа контента сайта на дочерние типы контента.

Обновление запечатанных типов контента

Запечатанные типы контента нельзя обновить с помощью пользовательского интерфейса или модели объектов. Если требуется обновить запечатанный тип контента, необходимо установить свойство Sealed этого типа контента в значение false, а затем вносить изменения. Не следует изменять это определение типа контента напрямую.

Чтобы устанавливать значение свойства Sealed объекта SPContentType, необходимы права администратора в семействе сайтов. Дополнительные сведения см. в статье Управление изменениями типов контента.

См. также

Концепции

Введение в типы контента

Обновление дочерних типов контента

Управление доступом к типам контента

Типы контента сайта и списка

Управление изменениями типов контента