Как изменить представление библиотеки документов SharePoint на лету с помощью кода - PullRequest
0 голосов
/ 04 марта 2010

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

Итак:

DocLib Contract_For_Project_A.pdf (метада: код: PRJA) Contract_For_Project_B.pdf (metada: code: PRJB) и т. д.

В терминах требований, возможно, что-то вроде: «Я хочу сохранить документ, относящийся к конкретному проекту, например контракты, в любой библиотеке документов, принадлежащей подразделению или отделу и т. д.быть ограниченным для хранения конкретного документа проекта только на сайте проекта, так как может иметь смысл связать их с соответствующим отделом / отделом и т. д. "

И есть требование пользователя, что" как пользователь, яхотите иметь возможность просматривать только конкретный документ проекта на основе метаданных кода проекта, которые я выберу, когда попаду на портал, и все показанные мне документы должны быть отфильтрованы по метаданным выбранного кода проекта (в любой библиотеке документов, содержащейдокументы по проекту)

Вопрос в том, как мы можем сделатьэто в SharePoint?

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

Представления DocLib ViewForProjectA ViewForProjectB и т. д.

Это хороший подход или есть лучший подход?

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

1 Ответ

1 голос
/ 04 марта 2010

Я бы порекомендовал следующий подход, который я считаю простым и не требует кодирования.

  1. Создать пользовательский тип контента Проект , унаследованный от Document, можно добавить столбец для кода проекта.
  2. Добавьте этот тип контента ко всем документам Lib любого сайта, который вы хотите.
  3. Создайте веб-часть запроса контента, подключите этот тип контента и добавьте фильтр для фильтрации записей на основе кода проекта.
  4. Если вы хотите отобразить детали, основанные на информации о вошедшем в систему пользователе, то вы всегда можете использовать таргетинг на аудиторию или расширить веб-часть запроса контента, чтобы получить индивидуальные настройки на основе имени пользователя в системе.

См. для получения дополнительной информации о WebPart Query Content.

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