Доступ к URL-адресу изображения в Umbraco 8

Я пытался использовать Umbraco 8 в новом проекте. (У меня есть опыт C#, но я никогда не использовал Umbraco раньше)

Я добавил шаблоны и настроил их для приема данных, однако я установил "домашний" DocType и добавил селектор изображений. После настройки и публикации данных я пытаюсь обновить шаблон для отображения изображения и продолжаю сталкиваться с ошибками, которые я пробовал:

var backgroundImageId = Model.Value("backgroundImage");
var backgroundImage = Umbraco.Media(backgroundImageId);
@Model.Value("backgroundImage").Url

И куча других, которые не удавались. Я просто не могу заставить его работать.

Любые предложения приветствуются.

2 ответа

Решение
var backgroundImage = Model.Value<IPublishedContent>("backgroundImage").Url;

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

Есть несколько способов получить это.

IPublishedContent contentbackgroundImage = umbracoHelper.TypedContent(backgroundImageId);

var backgroundImage = contentbackgroundImage?.GetPropertyValue<IPublishedContent>("backgroundImage");

Вы можете сделать так на страницах бритвы

@{
    var backgroundImage = Model.GetValue<IPublishedContent>("backgroundImage")
}

из этого вы можете получить доступ к свойствам, таким как URL, имя, союзники и т. д.

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