2012-03-03 1 views
5

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

Поиск Google и Stack Overflow   получил меня это далеко:

@{ 
    var mediaId = DynamicModel.Animation; 
    var media = (TypedEntity)Umbraco.GetEntityById(mediaId); 
}  

где «Анимация» является именем свойства средств массовой информации в моей странице.

Как я могу добраться до пути изображения к элементу мультимедиа?

+1

UPDATE: Для тех, кто, начиная с Umbraco v5 - быть в курсе, что v5 было прекращено (HTTP: // Umbraco. com/follow-us/blog-archive/2012/6/13/v5-rip.aspx) –

ответ

6

Вам необходимо использовать вспомогательный метод @Umbraco.GetMediaUrl. В моем случае:

<img src="@Umbraco.GetMediaUrl(DynamicModel.myImageProperty)" /> 

где myImageProperty это имя свойства в моей странице.

Надеюсь, это поможет кому-то.

(КИ, я нашел ответ на мой собственный вопрос, кажется, я был слишком ленив, чтобы изучить сайт образца книжного магазина в деталях, которая объясняет, почему не была больше информации в Интернете.)

+0

Вы, сэр, являются гением. Я боролся с этим последние два часа. –

+0

Кто-нибудь знает, как это сделать для медиа-сборщика в версии 7? @inherits Umbraco.Web.Mvc.UmbracoTemplatePage @ { Layout = "umbLayout.cshtml"; } @ Umbraco.RenderMacro ("InsertWidgit", new {[email protected]}) – tree

1

DynamicModel является устарели и будут удалены в Umbraco 5.3, вместо этого следует использовать CurrentPage:

<img src="@Umbraco.GetMediaUrl(CurrentPage.imageProperty)" />

 Смежные вопросы

  • Нет связанных вопросов^_^