Sharepoint, как получить список конкретных полей / столбцов Sharepoint - PullRequest
0 голосов
/ 15 апреля 2010

У меня есть список полей / столбцов, который состоит из определенных полей / столбцов Sharepoint, моих собственных настраиваемых полей / столбцов и набора настраиваемых полей / столбцов, созданных кем-то другим (чего я пока не знаю, какие они есть).Моя цель - получить список полей / столбцов, созданных этим кем-то еще.

Мое первое препятствие заключается в том, как определить, какие из них получены из Sharepoint.Поэтому мне было интересно, есть ли способ программно получить список полей / столбцов, специфичных для Sharepoint?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 15 апреля 2010

Это не программно, но в 12 Hive вашего сервера в разделе Template / Features / fields есть файл fieldswss.xml, который, я считаю, содержит все стандартные поля SharePoint.

Более программный подход заключается в переборе столбцов сайта и выполнении некоторой проверки. Например,

List<string> retVal = new List<string>();
using (SPSite site = new SPSite("urlofsite")) 
{
    using (SPWeb web = site.OpenWeb())
    {
        List<string> spColGroups = new List<string>() { "Base Columns", "Core Contact and Calendar Columns", "Core Document Columns", "Core Task and Issue Columns", "Extended Columns" }

        foreach (SPField field in web.Fields)
        {
            if (spColGroups.Contains(field.Group))
            {
                retVal.Add(field.Title);
            }
        }
    }
}

Список retVal будет содержать имена всех столбцов сайта, которые относятся к стандартным группам столбцов сайта SharePoint (по крайней мере, для WSS. Я не знаю о MOSS). Моя личная практика (я не знаю, является ли это распространенным явлением, но я думаю, что это очень мудрый шаг) - всегда создавать свои собственные настраиваемые столбцы в группе, отличной от стандартных SharePoint, поэтому при этом получаются только столбцы SharePoint , Если это не так, вам придется разработать более полезную проверку для вашей ситуации. Я надеюсь, что, если это не решит вашу проблему, это, по крайней мере, поможет вам встать на правильный путь.

0 голосов
/ 19 апреля 2010

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

0 голосов
/ 15 апреля 2010

Попробуйте веб-службу поиска данных, предоставляемую SharePoint.

http://<site>/_vti_bin/DspSts.asmx

У меня нет SharePoint на домашней машине, чтобы проверить это самостоятельно, но я бы попробовал класс «Поля». Завтра я проверю это на работе.

Документация: http://msdn.microsoft.com/en-us/library/ms774413.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...