Получить идентификатор и имя из поля типа пользователя в cqwp

Я создаю веб-часть запроса контента, которая должна показывать ссылку на страницу пользователя. Я получаю имя пользователя из пользовательского списка, содержащего столбец с именем "Член" типа "Персона или группа". Чтобы создать ссылку в ItemStyle.xsl, мне нужно имя и идентификатор пользователя:

<a href="http://<site>/_layouts/userdisp.aspx?ID=@ID">
    <xsl:value-of select="@Member" />
</a>

Тем не менее, я могу получить только имя или идентификатор из запроса контента. Например, если я установил "Показать поле: Имя (с присутствием)" для столбца "Участник", я получу имя, а если я установлю "Показать поле: ID", я, очевидно, получу Id. Но мне нужны оба!

Я сделал довольно обширный поиск в Google, но я не смог найти ответ. Самое близкое, что я пришел, это:

http://social.technet.microsoft.com/Forums/en-US/e6a29bf0-82de-46b1-896a-9d45c8fd527f/sharepoint-2010-cqwp-how-to-get-the-user-id-from-a-user-field-type-value?forum=sharepointgeneralprevious

но ответ не удовлетворяет моим потребностям. Любая помощь или идеи будут с благодарностью!

1 ответ

Используя XSL, я могу сделать это:

<xsl:if test="@Contact.title != ''">
  <xsl:value-of select="@Contact" disable-output-escaping="yes"/>
</xsl:if>

Это дает мне ссылку на страницу профиля пользователя с именем (эквивалент якоря с отображаемым именем).

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

Другие вопросы по тегам