我是Umbraco版本5和Razor的新手,但我正在尝试获取存储为当前页面属性的媒体文件的路径,以便将其呈现为图像。
搜索Google和Stack;溢出让我走到了这一步:
@{
var mediaId = DynamicModel.Animation;
var media = (TypedEntity)Umbraco.GetEntityById(mediaId);
}
其中"Animation"是页面中媒体属性的名称。
如何获取媒体项目的图像路径?
您需要使用@Umbraco.GetMediaUrl
辅助方法。就我而言:
<img src="@Umbraco.GetMediaUrl(DynamicModel.myImageProperty)" />
其中myImageProperty
是我的页面中属性的名称。
我希望这能帮助到别人。
(好吧,我找到了我自己问题的答案,似乎我太懒了,没有详细研究样本书店网站,这解释了为什么网上没有更多信息。)
DynamicModel已弃用,将在Umbraco 5.3中删除,相反,您应该使用CurrentPage:
<img src="@Umbraco.GetMediaUrl(CurrentPage.imageProperty)" />