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


Поля и ссылки на поля

Дата последнего изменения: 21 июля 2010 г.

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

В этой статье
Столбцы — это поля или ссылки на поля
Добавление столбцов к спискам
Создание ссылок на столбцы в типах контента

В этом разделе рассматривается разница между полями и ссылками на поля.

Столбцы — это поля или ссылки на поля

В различных схемах SharePoint Foundation, таких как сайты, списки и определения типов контента, столбцы представлены как элементы Field или Элемент FieldRef (ContentType).

В определениях списков и сайтов столбцы сайтов и списков представлены как элементы Field. Однако в определениях типов контента ссылки на столбцы сайтов и списков представлены как элементы FieldRef. Аналогично этому, в объектной модели столбцы сайтов и списков, содержащиеся на сайтах и в списках, представлены как объекты SPField, а ссылки на столбцы сайтов и списков в типах контента представлены как объекты SPFieldLink.

Элемент Field содержит полное определение столбца сайта или списка.

Элемент FieldRef является ссылкой на столбец, определенный в другом месте — на уровне сайта или списка. В ссылке на поле можно переопределить подмножество свойств столбца, включая:

  • отображаемое имя;

  • XML-атрибуты повышения и понижения;

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

При изменении этих свойств в ссылке на поле, они действуют только в отношении конкретных типов контента, в которых присутствуют ссылки на данное поле.

Добавление столбцов к спискам

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

Дополнительные сведения о столбцах сайтов см. в разделе Введение в столбцы.

При добавлении столбца сайта в список в списке создается локальная копия определения столбца в виде столбца. Таким образом, столбец списка в схеме списка представляется элементом Field. В объектной модели он представляется объектом SPField.

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

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

На уровне списка также можно создавать столбцы. Эти столбцы применяются только к списку, в котором они созданы. Можно добавлять столбцы списка к типам контента списка. Столбцы списка также представлены в схеме списка в виде элементов Field, а в объектной модели — в виде объектов SPField. Поскольку они не являются производными от другого столбца, они не имеют с какими-либо столбцами отношений "родительский-дочерний".

Создание ссылок на столбцы в типах контента

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

Ссылка на поле сохраняет тот же идентификатор поля, что и ссылающийся на него столбец.

При создании типа контента на основе родительского типа контента по умолчанию все столбцы, на которые имеются ссылки в родительском типе, представляются в дочернем типе контента как элементы FieldRef.

При добавлении типа контента в список столбцы, на которые существуют ссылки в этом типе контента, копируются в локальный список в виде столбцов. Столбцы, на которые ссылаются различные элементы FieldRef в схеме типа контента, копируются в схему списка как элементы Field — снова с привязкой "родительский-дочерний" по отношению к столбцу сайта.

При создании ссылки на столбец списка в типе контента списка она добавляется как элемент FieldRef в схему типа контента списка.

Таким образом, в схемах сайтов и списков столбцы всегда представлены элементами Field, а в схемах типов контента — всегда элементами FieldRef.

В объектной модели Windows SharePoint Services 3.0 ссылки на поля в типах контента представлены объектами SPFieldLink.

Следующий рисунок иллюстрирует эту зависимость. Допустим, в типе контента имеется ссылка на столбец Author сайта. В схеме типа контента ссылка на столбец представлена элементом FieldRef. При добавлении типа контента в список SharePoint Foundation добавляет столбец Author как элемент Field. Оба элемента имеют тот же идентификатор поля, что и столбец Author сайта. При создании в типе контента ссылки на столбец списка ItemNoSharePoint Foundation добавляет его как элемент FieldRef с тем же идентификатором поля.

Поля и ссылки на поля в сайтах и списках

См. также

Задачи

Практическое руководство: ссылка на столбец в типе контента

Концепции

Определения типов контента

Другие ресурсы

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