Может ли элемент списка SharePoint рассчитывать целевую аудиторию или автоматически указываться иным образом? - PullRequest
4 голосов
/ 09 апреля 2009

Я хочу показать целевой (отфильтрованный) контент из списка пользователям. У меня уже есть столбец в списке, который в основном имеет значение Целевая аудитория. Это поле является столбцом с несколькими вариантами (флажок ввода), который я предпочитаю текущему полю ввода для целевых аудиторий.

Чтобы включить фильтрацию аудитории, мне, к сожалению, нужно заполнить поле «Целевая аудитория» для каждого элемента списка. Мой текущий план состоит в том, чтобы использовать простой рабочий процесс конструктора SharePoint для установки поля «Целевые аудитории» на основе моего другого поля, но мне интересно, есть ли лучший способ. Я просто смотрю на это неправильно?

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

Ответы [ 3 ]

4 голосов
/ 10 апреля 2009

Вы могли бы попытаться дать этому водоворот ...

SPField audienceField = null;

try
{
    audienceField = list.Fields[Microsoft.SharePoint.Publishing.FieldId.AudienceTargeting]
}
catch
{}

if(audienceField != null)
{
try
{
    Audience siteAudience;
    ServerContext context = ServerContext.GetContext(site);
    AudienceManager audManager = new AudienceManager(context);
    foreach (SPListItem item in list.Items)
    {
      string audienceName = item["fakeAudienceField"]; //should be the audience name created in SSP
      siteAudience = audManager.GetAudience(audienceName);
      Guid id = siteAudience.AudienceID;
      item["Target Audiences"] = id.ToString()+";;;;";
      item.Update();
    }
}
catch
{}
0 голосов
/ 14 апреля 2009

Я не верю, что целевые аудитории могут быть настроены как вычисляемое поле, и в этом случае ваши параметры - это рабочий процесс или получатель события элемента списка.

Чтобы установить значение поля аудитории, вы можете использовать AudienceManager.GetAudienceIDsAsText; У Гэри Лапойнта есть пост с примером использования .

0 голосов
/ 09 апреля 2009

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

...