Шаблон бритвы 2sx c - отображение данных из полей профиля пользователя DNN - PullRequest
0 голосов
/ 06 марта 2020

У меня есть модуль контента, настроенный для использования шаблона бритвы, и мне нужно, чтобы он извлекал данные из поля в профиле пользователя. Я могу заставить его показать имя, адрес электронной почты и т. Д. c. с форматом @ Dnn.User.Email, но я не могу получить ни одно из настраиваемых полей профиля.

Я использовал вспомогательные фрагменты, чтобы попытаться получить правильный формат - перешел к «Информация пользователя Dnn» выпадающий, щелкнул Профиль> AnyValue. Он вставил это: @ Dnn.User.Profile.GetPropertyValue ($ {1: City} \)

У меня есть поле города, но этот код нарушает шаблон. «Ошибка CS1056: неожиданный символ« $ »в System.Web.Compilation.AssemblyBuilder.Compile ()» - начало сообщения об ошибке на странице.

Я пытался изменить код в конце () но никакие изменения, которые я сделал, заставили его работать.

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

1 Ответ

0 голосов
/ 12 марта 2020

Я думаю, что фрагмент сделал что-то не так - $ -синтаксис - это заполнитель для редактора, который позволяет вам заменить тексты на tab-tab-tab.

В основном вам нужно что-то вроде этого:

@Dnn.User.Profile.GetPropertyValue("City")

Как указал Джо, любой API DNN будет работать - Dnn.User на самом деле является обычным объектом UserInfo DNN.

Если вы хотите запросить пользователей et c. вы можете использовать источник данных DnnUserProfile (https://docs.2sxc.org/api/dot-net/ToSic.Sxc.Dnn.DataSources.DnnUserProfile.html) для создания визуальных запросов или использования кода, и, конечно, вы всегда можете просто использовать обычный API DNN.

...